java的split方法的转义字符

一.实例

我们都知道  String s="ad,dfjdlfs,df,s,dfl";

     执行 String re[]=s.split(",");
     则re的数组将是re[0]="ad"  re[1]="dfjdlfs" re[2]="df" re[3]="s" re[4]="dfl"
同理   String s="an|ddd|aed"
     执行  String re[]=s.split("|");
     结果中却  re[0]=""  re[1]="a"  re[2]="n" re[3]="|"  re[4]="d" ........
刚开始不知道怎么回事?

二.后来查了java的转义字符 

1.八进制转义序列:\ + 1到3位5数字;范围'\000'~'\377'      \0:空字符
2.Unicode转义字符:\u + 四个十六进制数字;0~65535       \u0000:空字符
3.特殊字符:就3个
      \":双引号
     \':单引号
     \\:反斜线
4.控制字符:5个
\r 回车 
\n 换行 
\f 走纸换页 
\t 横向跳格 
\b 退格 

5.其他转义字符
点的转义:. ==> u002E 或者
美元符号的转义:$ ==> u0024 
乘方符号的转义:^ ==> u005E 
左大括号的转义:{ ==> u007B 
左方括号的转义:[ ==> u005B 
左圆括号的转义:( ==> u0028 
竖线的转义:| ==> u007C 
右圆括号的转义:) ==> u0029 
星号的转义:* ==> u002A 
加号的转义:+ ==> u002B 
问号的转义:? ==> u003F 

反斜杠的转义: ==> u005C 

空格的转义:===>s

多个空格的转义:===>s+

解决办法:

后来改成:
  String s="an|ddd|aed"    执行  String re[]=s.split(\\u007C);   或者String re[]=s.split("\\|");
结果就是我想要的了   re[0]="an"  re[1]="ddd"  re[2]="aed"

posted @ 2020-03-21 19:31  月半大熊猫  阅读(1567)  评论(0编辑  收藏  举报