2011-11-15 48 views
11

如何使用[作爲分隔符來分割字符串?使用括號分割

String line = "blah, blah [ tweet, tweet"; 

,如果我做

line.split("["); 

我得到一個錯誤

異常線程 「main」 java.util.regex.PatternSyntaxException: 未關閉的性格接近指數1

任何幫助?

回答

32

[是在正則表達式中的保留字符,你需要逃避它,

line.split("\\["); 
4

只是逃避它:

line.split("\\["); 

[是正則表達式中一個特殊的元字符需要被轉義如果沒有一個字符類中,如在你的案件。

2

請使用"\\["代替"["

3

split方法使用正則表達式進行操作。字符[在這些中具有特殊含義;它用於表示[]之間的字符類別。如果您想使用文字方括號,請使用\\[將其作爲特殊字符轉義。有兩個斜槓,因爲反斜槓也被用作Java String文字中的轉義字符。在Java代碼中輸入正則表達式可能會讓人困惑。

2

[字符被解釋爲一個特殊的正則表達式字符,所以你要逃避它:

line.split("\\[");

相關問題