詳細出處參考:http://www.freezq.cn/article/380.htmjava
java中的split函數和js中的split函數不同。
Java中的咱們能夠利用split把字符串按照指定的分割符進行分割,而後返回字符串數組,下面是string.split的用法實例及注意事項:
java.lang.string.split
split 方法
將一個字符串分割爲子字符串,而後將結果做爲字符串數組返回。
stringObj.split([separator,[limit]]) 免費資源收集網(http://www.freezq.cn)
stringObj
必選項。要被分解的 String 對象或文字,該對象不會被split方法修改。
separator
可選項。字符串或正則表達式對象,它標識了分隔字符串時使用的是一個仍是多個字符。若是忽略該選項,返回包含整個字符串的單一元素數組。
limit
可選項。該值用來限制返回數組中的元素個數(也就是最多分割成幾個數組元素,只有爲正數時有影響)
split 方法的結果是一個字符串數組,在 stingObj 中每一個出現 separator 的位置都要進行分解。separator不做爲任何數組元素的部分返回。
示例1:
String str="Java string split test";
String[] strarray=str.split(" ");
for (int i = 0; i < strarray.length; i++)
System.out.println(strarray[i]);
將輸出:
Java
string
split
test
示例2:
String str="Java string split test";
String[] strarray=str.split(" ",2);//使用limit,最多分割成2個字符串
for (int i = 0; i < strarray.length; i++)
System.out.println(strarray[i]);
將輸出:
Java
string split test
示例3:
String str="192.168.0.1";
String[] strarray=str.split(".");
for (int i = 0; i < strarray.length; i++)
System.out.println(strarray[i]);
結果是什麼也沒輸出,將split(".")改成split("\\."),將輸出正確結果:
192
168
0
1
經驗分享:
一、分隔符爲「.」(無輸出),「|」(不能獲得正確結果)轉義字符時,「*」,「+」時出錯拋出異常,都必須在前面加必須得加"\\",如split(\\|);
二、若是用"\"做爲分隔,就得寫成這樣:String.split("\\\\"),由於在Java中是用"\\"來表示"\"的,字符串得寫成這樣:String Str="a\\b\\c";
轉義字符,必須得加"\\";
三、若是在一個字符串中有多個分隔符,能夠用"|"做爲連字符,好比:String str="Java string-split#test",能夠用Str.split(" |-|#")把每一個字符串分開; 正則表達式