【1】单个符号作为分隔符
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]);
【2】多个符号作为分隔符
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
System.out.println(splitAddress[0]+splitAddress[1]+splitAddress[2]+splitAddress[3]);
输出格式:上海上海市闵行区吴中路
*****************************************************************
总结:(1)split表达式,其实就是一个正则表达式。* ^ | 等符号在正则表达式中属于一种有特殊含义的字符,如果使用此种字符作为分隔符,必须使用转义符即\\加以转义。
(2)如果使用多个分隔符则需要借助 | 符号,如【2】所示,但需要转义符的仍然要加上分隔符进行处理。
原来JAVA中转义字符就很简单的四种: 1.八进制转义序列:\ + 1到3位5数字;范围'\000'~'\377' \0:空字符 2.Unicode转义字符:\u + 四个十六进制数字;0~65535 \u0000:空字符 3.特殊字符:就3个 \":双引号 \':单引号 \\:反斜线 4.控制字符:5个 \' 单引号字符 \\ 反斜杠字符 \r 回车 \n 换行 \f 走纸换页 \t 横向跳格 \b 退格 点的转义:. ==> u002E 美元符号的转义:$ ==> u0024 乘方符号的转义:^ ==> u005E 左大括号的转义:{ ==> u007B 左方括号的转义:[ ==> u005B 左圆括号的转义:( ==> u0028 竖线的转义:| ==> u007C 右圆括号的转义:) ==> u0029 星号的转义:* ==> u002A 加号的转义:+ ==> u002B 问号的转义:? ==> u003F 反斜杠的转义: ==> u005C 例如: Java代码 String str2="a&b&c"; String strs[]=str2.split("&"); for(String str:strs){ System.out.println(str); } 不会输出a,b,c,只有这样处理才可以: Java代码 String str2="a&b&c"; String strs[]=str2.split("\\u0024"); for(String str:strs){ System.out.println(str); }
转自 http://blog.sina.com.cn/s/blog_b6487d470101g0hp.html