string的split方法支援正規表示式;
正規表示式\s
表示匹配任何空白字元,+
表示匹配一次或多次。
有了以上補充知識,下面的內容就很好理解了。
待分割字串為如下:
string str = "a b c d e f g"
其中,字串中的的空白分別為:單個空格,多個空格,tab製表符。
正確**如下:
string arr = str.split("\\s+");
for(string ss : arr)
作為對比,錯誤**如下:
string arr2 = str.split(" ");
for(string ss : arr2)
使用正確**分割結果:
abc
defg
使用錯誤**分割結果:
abc
defg
四:編寫的程式
public特殊情況有 * ^ : | . \static
void
main(string args)
system.out.println("#####");
}輸出結果為
good12
morning34
good56
night78
一、單個符號作為分隔符
string splitaddress=address.split("\\"
); system.
out.println(splitaddress[0]+splitaddress[1]+splitaddress[2]+splitaddress[3]);
string splitaddress=address.split("\\|
"); //
如果以豎線為分隔符,則split的時候需要加上兩個斜槓【\\】進行轉義
system.out.println(splitaddress[0]+splitaddress[1]+splitaddress[2]+splitaddress[3]);
string splitaddress=address.split("\\*");system.
out.println(splitaddress[0]+splitaddress[1]+splitaddress[2]+splitaddress[3]);
string splitaddress=address.split("\\:");system.
out.println(splitaddress[0]+splitaddress[1]+splitaddress[2]+splitaddress[3]);
string splitaddress=address.split("\\.");system.
out.println(splitaddress[0]+splitaddress[1]+splitaddress[2]+splitaddress[3]);
string splitaddress=address.split("\\^");system.
out.println(splitaddress[0]+splitaddress[1]+splitaddress[2]+splitaddress[3]);
string splitaddress=address.split("@");system.
out.println(splitaddress[0]+splitaddress[1]+splitaddress[2]+splitaddress[3]);
string splitaddress=address.split(","二、多個符號作為分隔符);system.
out.println(splitaddress[0]+splitaddress[1]+splitaddress[2]+splitaddress[3]);
string address="上海^上海市@閔行區#吳中路";
string splitaddress=address.split("例:\\^|@|#"
);system.
out.println(splitaddress[0]+splitaddress[1]+splitaddress[2]+splitaddress[3
]);
string address = new string("輸出格式:192.168.13.240");
string str = address.split("
\\."
);
for(string s : str)
192168
13240
總結:
(1)split表示式,其實就是乙個正規表示式。* ^ | 等符號在正規表示式中屬於一種有特殊含義的字元,如果使用此種字元作為分隔符,必須使用轉義符即\\加以轉義。
(2)如果使用多個分隔符則需要借助 | 符號,如二所示,但需要轉義符的仍然要加上分隔符進行處理
java中split的用法
private static void testsplit 執行後你會發現結果是 5,並不是8,檢視原始碼可知會 從尾部檢查字元的長度是否為空,為空的就刪掉了,size遞減,只檢查尾部,頭部不檢查,所以頭部的 存在。下面是一下練習題 aa12sas32sasa223sas12as12wqe 去掉數字...
Java 的Split 與Join 用法
split 方法是切割成陣列的形式,join 方法是將陣列轉換成字串。1.join 方法用於把陣列中的所有元素放入乙個字串。元素是通過指定的分隔符進行分隔的。指定分隔符方法join 其中 可以是任意.2.與之相反的是split 方法 用於把乙個字串分割成字串陣列.stringobject.split...
JAVA的split使用注意事項
今天同事遇到的split的有趣情況 測試原始碼如下 import org.junit.test test public void stringsplit 輸出結果 0個逗號 split length 1 n n 0 個純逗號 split length 0 4個純逗號,最後乙個字元在最後乙個逗號之前,...