正则表达式提交空字符串

时间:2012-04-27 09:56:22

标签: java regex

我有以下REGEX,我通过xml文件提供给java。

[a-zA-Z -\(\) \-]+

这个正则表达式用于验证服务器端和客户端(通过javascript),并且只允许使用字母内容和其他一些字符......

我的问题是它还允许零长度字符串/空通过。

有没有人对此有一个简单而优雅的解决方案?

我已经尝试过......

[a-zA-Z -\(\) \-]{1,}+

但这似乎没有效果。

干杯!

  

调查后的更新

看来我提供的代码确实有效......

String inputStr = " ";
    String pattern = "[a-zA-Z -\\(\\) \\-]+";
    boolean patternMatched = java.util.regex.Pattern.matches(pattern, inputStr);
    if ( patternMatched ){
        out.println("Pattern MATCHED");
    }else{
        out.println("NOT MATCHED"); 
    }

仔细观察之后我认为问题可能在我的一些java bean编码的逻辑中......看起来正在出现字符串解析时正则表达式被删除,从而允许空要提交的字符串......以及任何其他字符串...... EEJIT我是......

尽管在同行评审我最初的愚蠢的帮助,干杯......!

1 个答案:

答案 0 :(得分:2)

你试过这个:

[a-zA-Z -\(\) \-]+