2012-10-24 95 views
2

我有一個包含像字符串的字符串變量結果:字符串分割成字符串數組

"<field1>text</field1><field2>text</field2> etc.." 

我使用此代碼,試圖把它分解:

Result = Result.replace("><", ">|<"); 

String[] Fields = Result.split("|"); 

按照許多網站,包括這一個,這應該給我一個這樣的數組:

Fields[0] = "<field1>text</field2>" 
Fields[1] = "<field2>test</field2>" 
etc... 

但它給了我一個數組,如:

Fields(0) = "" 
Fields(1) = "<" 
Fields(2) = "f" 
Fields(3) = "i" 
Fields(4) = "e" 
etc.. 

那麼,我做錯了什麼?

回答

2

您對split("|")調用解析|爲正則表達式,或者,其自身將每一個人物之間的分裂。

您可以使用正則表達式轉義字符來防止發生這種情況,或者完全使用不同的臨時拆分字符。

String[] fields = result.split("\\|"); 

result = result.replace("><", ">~<"); 
String[] fields = result.split("~"); 
2

嘗試做

String[] fields = result.split("\\|"); 

請注意,我用更傳統的變量名(他們不應該以大寫字母開頭)。

記住split方法需要正則表達式作爲參數,並|擁有世界正則表達式的,這就是爲什麼你不接受你期待什麼特定的含義。


相關文章: