您的位置:首页 > 编程语言 > Java开发

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

2016-01-20 16:00 836 查看
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]);这样就可以了。

例子:
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: