2013-08-29 102 views
-1

我有以下格式的輸入字符串 first|second|third|<forth>|<fifth>|$sixth我想將此字符串拆分爲值爲[first,second,third ,,, $ six]的字符串數組。我正在使用下面的代碼來拆分字符串,但這是行不通的。請幫幫我。如何拆分由|分隔的字符串字符

public String[] splitString(String input){ 
String[] resultArray = input.split("|") 
return resultArray; 
    } 

你能告訴我我做錯了什麼。

回答

6

你需要使用反斜槓|,因爲它是一個特殊字符。這應該工作:

String[] resultArray = input.split("\\|") 
+0

我不認爲這是真的。我會研究它,如果是的話就撤銷downvote。 – tbodt

+0

@tbodt我相信這是真的! –

+0

我認爲它是真實的。 –

2

|是一個元字符,這意味着它代表了正則表達式中的其他東西。考慮到split將regex作爲參數,它使用正則表達式來解釋參數。您需要在其之前放置一個\\以「逃離」所有元字符。在你的情況下,你會這樣做:

String[] resultArray = input.split("\\|");