我正在尝试编写一个字符串验证来匹配除 = 之外的任何字符(常规、数字和特殊)。
这是我写的 -
String patternString = "[[^=][\\w\\s\\W]]*";
Pattern p = Pattern.compile(patternString);
Matcher m = p.matcher(str);
if(m.matches())
System.out.println("matches");
else
System.out.println("does not");
但是,它将输入字符串“2009-09/09 12:23:12.5="与模式匹配。
如何从模式字符串中排除 =(或任何其他字符)?
最佳答案
如果唯一被禁止的字符是等号,像 [^=]*
这样的字符应该可以工作。
[^...]
是一个否定字符类;它匹配单个字符,该字符是除方括号之间的列表中的一个以外的任何字符。 *
重复表达式零次或多次。
关于java - 使用正则表达式匹配除 = 之外的任何字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9770860/