正则表达式在某些情况下无法正常工作

Var*_*run 0 java regex

asRuleValue是 [^0-9a-zA-Z"'-.#, ]

Pattern classPattern = Pattern.compile(asRuleValue, Pattern.CASE_INSENSITIVE);
Matcher m = classPattern.matcher(asValue);
if (!m.find())
{
   lbFlag = true;
}
Run Code Online (Sandbox Code Playgroud)

在某些情况下工作不正常,比如()我在这里做错了什么?

ste*_*ema 9

你需要-在你的角色类中转义它或将它放到最后.

使用:

[^0-9a-zA-Z"'.#, -]
Run Code Online (Sandbox Code Playgroud)

否则,你正在创建一个字符范围',以.包括也()*+,