scala的split切分異常

今天使用scala讀取用戶信息表分析出各個字段,切分的時候出現異常:java

兩個字段之間的分隔符爲***ABC***正則表達式

代碼:spa

val linerecord =  line.split("***ABC***")

而後拋出:scala

Exception in thread "main" java.util.regex.PatternSyntaxException: Dangling meta character '*' near index 0
***ABC***it

從字面意思上看,就是語法錯誤了,通過驗證,是scala的正則表達式的問題,io

val linerecord =  line.split("\\*\\*\\*ABC\\*\\*\\*")

這樣寫,把正則表達式裏*轉義爲普通字符,就不會拋異常了。其餘的正則表達式特殊符合同樣,遇到轉義一下就能夠了。thread

scala裏的正則表達式和Java基本一致。meta

相關文章
相關標籤/搜索