Java:String.split()特殊字符处理操作
⼀:需要特殊处理才能使⽤split()⽅法的字符
(1)需要使⽤"\\"或"[ ]"才能正确使⽤的字符集:
( ) [ ] { \ ? * + . ^ $ |
(2)栗⼦:
String str = "a0^33$\\53\6|!?3#6&5/*6~9 MY{.3+-/}*(]6[>=<-(8";
//这⾥以"("为例
String str_sub1 = str.split("\\(")[0];
String str_sub2 = str.split("[(]")[0];
⼆:如不处理直接使⽤可能会出错的情况
(1)"|" 和 "/*" 会把字符串截取成单个字符数组来返回
(2)"^" 和 "$" 则会取整个字符串来返回
三:"\" 的使⽤
(1) 能取到的字符串⼀般不会出现单独的 \ 当出现 \\ 可以使⽤split("\\\\")来解析
补充知识:空字符串在String.split中的坑
当使⽤String的时候,总是⽤String!=null && String.length()>0 同时出现⽤作判断条件,今天就掉这个坑了。
这种条件限制是保证字符串有值并且⾮空,很多情况下空字符串不是我们想要的结果,会出问题。
⽐如
String s = ",1,2,3,4,,,,";
java中split的用法s.split(”,“);
则输出:空字符,1,2,3,4。此时第⼀个空字符很容易被忽略掉, 导致exception.
以上这篇Java:String.split()特殊字符处理操作就是⼩编分享给⼤家的全部内容了,希望能给⼤家⼀个参考,也希望⼤家多多⽀持。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。