特殊情況有 * ^ : | . \
一、單個符號作為分隔符
- String address="上海\上海市|閔行區\吳中路";
String[] splitAddress=address.split("\\"); System.out.println(splitAddress[0]+splitAddress[1]+splitAddress[2]+splitAddress[3]);
- String address="上海|上海市|閔行區|吳中路";
String[] splitAddress=address.split("\\|"); //如果以豎線為分隔符,則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="上海:上海市:閔行區:吳中路";
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="上海^上海市^閔行區^吳中路";
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="上海,上海市,閔行區,吳中路";
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){ System.out.println(s); }
輸出格式:
192
168
13
240
總結:
(1)split表達式,其實就是一個正則表達式。* ^ | 等符號在正則表達式中屬於一種有特殊含義的字符,如果使用此種字符作為分隔符,必須使用轉義符即\\加以轉義。
(2)如果使用多個分隔符則需要借助 | 符號,如二所示,但需要轉義符的仍然要加上分隔符進行處理