一.實例
我們都知道 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"