Java正则表达式在字符串中查找符号

时间:2013-01-05 01:47:13

标签: java regex symbols

我正在寻找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;
}

只允许使用字母数字字符,包含“。” [点] 不允许使用的符号:-_ = + \ | [{]};:'“,&lt;&gt; /

1 个答案:

答案 0 :(得分:3)

说出你想要的东西有点难,所以这里有两个选择:

仅限字母数字和点:

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

禁止列出的字符:

if (!myString.matches("[^-_=+\\\\|\\[{\\]};:'\",<>/]*") {
    // contained an invalid character
}