java - 使用正则表达式匹配除 = 之外的任何字符

标签 java regex

我正在尝试编写一个字符串验证来匹配除 = 之外的任何字符(常规、数字和特殊)。

这是我写的 -

    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/

相关文章:

java - [[Ljava.lang.Integer;@3af4d6b3, [Ljava.lang.Integer;@203ba002]

java - adfs (oauth2) token 验证方法?

java - 自定义渲染器后 JTable 列不可编辑

javascript - 正则表达式不适用于电话号码字段

php - 基于 PHP 和 MySQL 性能思想的动态词汇表

java - com.fasterxml.jackson.databind.JsonMappingException : No content to map due to end-of-input in Spring Boot App

java - 处理线程池隔离?

javascript - 正则表达式以匹配音频文件

python - 获取字符串之间的子字符串。但启动发生了多次

python - 相当于\b 的正则表达式也匹配多个空格