正则表达式验证正则表达式

时间:2009-01-06 13:39:22

标签: regex

  

可能重复:
  Regexp that matches valid regexps

重复Regexp that matches valid regexps

如何生成仅匹配有效正则表达式的正则表达式?

例如:"[hc]at"有效(匹配"hat""cat"),但"[hcat"无效,因为缺少]。< / p>

3 个答案:

答案 0 :(得分:2)

通常,不,因为嵌套的parens和括号等对,你需要一个递归的后代解析器(或类似的)来处理。

答案 1 :(得分:2)

使用正确的工具完成工作。更好的解决方案是使用您正在使用的语言的RegEx类。

类似的东西:

>  Regex rx = new Regex("[INVALID REGEX
> HERE");  if(rx.Valid())  {    ...  }

答案 2 :(得分:1)

在Java中,您可以通过调用

来检查正则表达式
// Create a pattern to match breaks
    Pattern p = Pattern.compile("[,\\s]+");
如果表达式的语法无效,

compile methode会抛出PatternSyntaxException