发现还是有些东西没有刻子脑子里,,过段时间就没什么概念了,所以贴出来...以免再忘...
?
在拆分字符串时遇到通过 \ 来拆分,可是用所以想通过转义 \\ 来拆分的时候会报异常
?
class="dp-j">
- public?class?Main?{??
- ??
- ?????
- ?
- ??
- ????public?static?void?main(String[]?args)?{??
- ????????String?aa?=?"g:\\a\\bb\\cc.gif";??
- ????????System.out.println(aa);??
- ?????????
- ?
- ?
- ?
- ?
- ?
- ???
- ????????String[]?xx?=?aa.split("\\");??
- ????????for(String?cell:xx){??
- ????????????System.out.println(cell);??
- ????????}??
- ????}??
- ??
- }??
异常如下:
?
?
- Exception?in?thread?"main"?java.util.regex.PatternSyntaxException:?Unexpected?internal?error?near?index?1??
- \??
- ?^??
- ????at?java.util.regex.Pattern.error(Pattern.java:1713)??
- ????at?java.util.regex.Pattern.compile(Pattern.java:1466)??
- ????at?java.util.regex.Pattern.<init>(Pattern.java:1133)??
- ????at?java.util.regex.Pattern.compile(Pattern.java:823)??
- ????at?java.lang.String.split(String.java:2292)??
- ????at?java.lang.String.split(String.java:2334)??
- ????at?cn.osl.businessagent.test.Main.main(Main.java:18)??
这时应该用\\\\
?
?
- public?class?Main?{??
- ??
- ?????
- ?
- ??
- ????public?static?void?main(String[]?args)?{??
- ????????String?aa?=?"g:\\a\\bb\\cc.gif";??
- ????????System.out.println(aa);??
- ?????????
- ?
- ?
- ?
- ?
- ?
- ???
- ????????String[]?xx?=?aa.split("\\\\");??
- ????????for(String?cell:xx){??
- ????????????System.out.println(cell);??
- ????????}??
- ????}??
- ??
- }??
输出结果:
?
?
- g:\a\bb\cc.gif??
- g:??
- a??
- bb??
- cc.gif ?