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]);这样就可以了。
例子:
第一种:首先获取这个的索引s.indexOf("},{"),因为它里面传的是字符串,所以不会有索引的问题,在通过substring截取就可以了。
第二种:多次转移,让它不认为是正则String s = "\"asfasf\"},{\"asdffasfas\"";System.out.println(s.split("(\\}\\,\\{)")[0]);这样就可以了。
例子:
相关文章推荐
- MyEclipse打不开jsp文件 报错“Failed to create the part's controls"
- MyEclipse打不开jsp文件 报错“Failed to create the part's controls"
- SpringMVC 异常统一处理
- 线程的相关知识、JAVA实现死锁、生产者消费者问题
- 设置eclipse默认打开文件方式
- java中最常用jar包的用途说明,适合初学者
- Java Exception(Comparison method violates its general contract)
- java设计模式:观察者模式实例详解(基于java内置观察者)
- java分配内存的一些感悟
- JAVA中获取当前系统时间
- Java中getResourceAsStream的用法
- eclipse自定义注释
- java synchronized详解
- Eclipse--Debug---断点调试
- 【JAVA】反射工具类
- (转)Java并发编程之内存模型与volatile关键字解析
- Java并发下的count++问题
- SpringMVC 异常处理
- Java到底是传引用还是传值?
- Myeclipse怎么配置自动代码提示步骤