java.util.regex.PatternSyntaxException: Illegal repetition near index 1

来源:互联网 发布:剑三喜子捏脸数据 编辑:程序博客网 时间:2024/05/17 22:02
          String的split切割当里面有需要转移的符号时,如果直接切割比如这个String s = "\"asfasf\"},{\"asdffasfas\"";System.out.println(s.split("},{"));,就会直接报错,报的错误就是上面题目上面的错误。它之所以报错就是因为在split()里面放入的就是正在,而当你切割的时候,他把s里面的转移符当正则了,所以就报错了,解决办法有两种:

第一种:首先获取这个的索引s.indexOf("},{"),因为它里面传的是字符串,所以不会有索引的问题,在通过substring截取就可以了。

第二种:多次转移,让它不认为是正则String s = "\"asfasf\"},{\"asdffasfas\"";System.out.println(s.split("(\\}\\,\\{)")[0]);这样就可以了。

例子:

0 0
原创粉丝点击