具有特殊字符的JAVA模式类

具有特殊字符的JAVA模式类,java,regex,compilation,Java,Regex,Compilation,我目前正在使用此代码查找所需字符串中的任何特殊字符: Pattern p = Pattern.compile("[^a-z0-9 ]", Pattern.CASE_INSENSITIVE); Matcher m = p.matcher(nickname); if (m.find()) { // CODE } 但是,我希望他们能够使用&符号。有没有办法不检测特定符号?您可以将&添加到正则表达式中以排除它。改变 [^a-z0-9] 到 [^a-z0-9&] 此外,由于此处的目的是查找特殊字符

我目前正在使用此代码查找所需字符串中的任何特殊字符:

Pattern p = Pattern.compile("[^a-z0-9 ]", Pattern.CASE_INSENSITIVE);
Matcher m = p.matcher(nickname);
if (m.find()) {
   // CODE
}

但是,我希望他们能够使用
&
符号。有没有办法不检测特定符号?

您可以将
&
添加到正则表达式中以排除它。改变

[^a-z0-9]

[^a-z0-9&]


此外,由于此处的目的是查找特殊字符,我建议将regex更改为允许使用大写字符,例如
[^a-zA-Z0-9&]

您可以将
&
添加到正则表达式中以排除它。改变

[^a-z0-9]

[^a-z0-9&]


此外,由于此处的目的是查找特殊字符,我建议将正则表达式更改为允许使用大写字符,例如
[^a-zA-Z0-9&]

用例子解释一个位。用例子解释一个位。我已经纠正了排除
空格
,因为它不计入特殊字符。我已经纠正了排除
空格
,因为它不计入特殊字符。