Unclosed group near index错误

之前自己写的一个模块在项目上线后最近频频出现tomcat崩掉的情况,从log看出现如下的报错信息:

java.util.regex.PatternSyntaxException: Unclosed group near index 85
\\u521B\\u4E1A\\u5927\\u53A6(\\u6D59\\u6C5F\\u897F\\u6EAA\\u6821\\u533A\\u65C1\\uFF09
at java.util.regex.Pattern.error(Pattern.java:1955)
......

从报错信息可以看出是正则出问题了,具体什么问题通过搜索发现是如下原因导致的:

在正则表达式中,有个“捕获组”的概念,其使用了小括号;因此分析,当正则表达式解析到左括号时,没有发现对应的右括号,从而报错。

  如上报错信息中的红色左括号,就是导致问题的地方,右括号是红色的对应的unicode编码(\\uFF09),这种情况也是没有预料到的,对于这个我的解决的办法就是把左括号替换成对应的unicode编码,或者直接替换成空字符串、成对的左右括号都是可以的,具体看情况而言。

  而且对于中括号[],也存在同样的问题,需要注意。

正则中的转意符"\"在Java语言中的表示

  因为"\"在正则表达式中是转意符,在需要描述一个已经被正则表达式使用的特殊字符(即元字符,如^、$、*、+、?等)时,使用"\"将其转变为原本的意思,如果要表示反斜杠本身,如果是写成正则表达式,在需要写成"\\\\",如果是普通字符串,写成"\\"即可。

...希望今天搬砖是顺利的一天...^_^

参考文献:https://blog.csdn.net/wangjunjun2008/article/details/39479423

字符串replaceAll()方法报错:java.util.regex.PatternSyntaxException:Unclosed group near index...的更多相关文章

  1. Exception in thread "main" java.util.regex.PatternSyntaxException: Unclosed character class near index 0 [ ^

    Exception in thread "main" java.util.regex.PatternSyntaxException: Unclosed character clas ...

  2. java.util.regex.PatternSyntaxException: Unclosed character class near index解决办法

    使用str.split("[")时,出现java.util.regex.PatternSyntaxException: Unclosed character class near  ...

  3. Exception in thread "main" java.util.regex.PatternSyntaxException: Unclosed character class near index 0 解决方法: 要对切割字符进行转义\\

    使用str.split("[",15)时,出现Exception in thread "main" java.util.regex.PatternSyntaxE ...

  4. java.util.regex.PatternSyntaxException: Unexpected internal error near index 1 \ ^

    1 String a = "1991\12\16"; 2 String[] split = a.split("\\"); 3 System.out.printl ...

  5. java.util.regex.PatternSyntaxException: Dangling meta character '*' near index 0

    使用repalceAll 方法出现java.util.regex.PatternSyntaxException: Dangling meta character '*' near index 0异常 ...

  6. 异常 java.util.regex.PatternSyntaxException:

    可变参数是在JDK1.5之后出来的一个行特性,也是一个比较好用的东西 想起好多jfinal还有其他框架的查询方法就有好多用到了可变参数,自己也写了个这样的方法 public class Test{   ...

  7. 我的Android进阶之旅------>解决错误: java.util.regex.PatternSyntaxException: Incorrect Unicode property

    1.错误描述 今天使用正则表达式验证密码的时候,报了错误 java.util.regex.PatternSyntaxException: Incorrect Unicode property near ...

  8. java.util.regex.PatternSyntaxException: Dangling meta character '*' near index 0 *&* 解决方法

    java.util.regex.PatternSyntaxException: Dangling meta character '*' near index 0*&*^    at java. ...

  9. 特殊字符导致用正则表达式进行字符串替换失败,Java replaceAll()方法报错Illegal group reference

    String str = "给商品||?>\\n阳澄湖大闸蟹!@#$%^&*()_+-=?:\",.]\\|~.,\/??\\\\|\\br点赞" Stri ...

随机推荐

  1. 一个JAVA程序员经常访问的网站

    综合技术网站: CSDN            http://www.csdn.net/ 51CTO             http://www.51cto.com/ 开源中国社区   http:/ ...

  2. Django自动获取项目中的全部URL

    import re from collections import OrderedDict from django.conf import settings from django.utils.mod ...

  3. javaweb开发2.新建一个javaweb项目

    1.File → New → Dynamic Web Project 2.创建一个Dynamic Web Project 3.点击“Next”下一步 4.点击“Next”下一步 5.点击“Finish ...

  4. sass基础常用指南

    一.变量 $global-color:red; .nav{ background:$global-color; } 二.sass命名时横杠和下划线不区分 $global-color:yellow; . ...

  5. MFC 字体

    dc.DrawText(_T("hello"), -1, //全部 &rect, DT_SINGLELINE| //在一行 DT_CENTER| //水平居中 DC_VCE ...

  6. Mac could not read from remote repository

    IDE clone数据的时候要使用SSH,不使用HTTPS,就解决了问题

  7. php流程控制

    return 例子一: <?php function add($a,$b){ echo "echo"; return $a+$b; //return 一般用于function ...

  8. 使用PostgreSQL进行中文全文检索

    code[class*="language-"], pre[class*="language-"] { background-color: #fdfdfd; - ...

  9. JVM自动内存管理机制——Java内存区域(上)

    一.JVM运行时数据区域概述 Java相比较于C/C++的一个特点就是,在虚拟机自动内存管理机制的帮助下,我们不需要为每一个操作都写像C/C++一样的delete/free代码,所以也不容易出现内存泄 ...

  10. SqlSessionFactoryBean的构建流程

    目的 此文的主旨在于梳理SqlSessionFactoryBean的初始流程,不拘泥于实现细节. 使用 SqlSessionFactoryBean的主要作用便是用来创建SqlSessionFactor ...