最近项目中须要分割字符串,字符串采用“key1|value1”格式,须要按照“|”分割字符串;java
String str = "key1|value1"; String[] arr = str.split("|"); for (int i = 0; i < arr.length; i++) { System.out.println( i + ":" + arr[i]); }
发现每一个字符都被分割:code
0:k 1:e 2:y 3:1 4:| 5:v 6:a 7:l 8:u 9:e 10:1
后来才知道 一些字符是须要转义以后才能进行split、replaceAll操做字符串
另附一些经常使用的转义列表;it
字符table |
转义字符class |
|
'项目 |
\'tab |
|
"co |
\"字符 |
|
\ |
\\ |
|
回车 |
\r |
|
换行 |
\n |
|
退格 |
\b |
|
横向跳格 |
\t |
|
走纸换页 |
\f |
|
. |
\\. |
\\u002E |
$ |
\\$ |
\\u0024 |
^ |
\\^ |
\\u005E |
{ |
\\{ |
\\u007B |
[ |
\\[ |
\\u005B |
( |
\\( |
\\u0028 |
| |
\\| |
\\u007C |
) |
\\) |
\\u0029 |
* |
\\* |
\\u002A |
+ |
\\+ |
\\u002B |
? |
\\? |
\\u003F |