0

我正在寻找 Java 正则表达式的一些解释。我已经阅读并尝试了不同的教程,但我的代码不想工作。

String myString = "JKAE[JKk]jkhe{kjef}kaejf-aef_a|ef=kjef+kejf\akejf/efj:efa;aef'asd"fd,<ef>";

if( myString.matches(".*[\\[|]|\\{|\\}|-|+|\\\\|;|:|\\'|\\"|<|>|/") ){
   log("something");
   return;
}

只允许使用字母数字字符,包括“.”。[点] 不允许使用符号:-_=+\|[{]};:'",<>/

4

1 回答 1

3

很难说出你想要什么,所以这里有两个选择:

仅适用于字母数字和点:

if (!myString.matches("[a-zA-Z0-9.]*") {
    // contained an invalid character
}

要禁止您列出的字符:

if (!myString.matches("[^-_=+\\\\|\\[{\\]};:'\",<>/]*") {
    // contained an invalid character
}
于 2013-01-05T01:51:18.797 回答