参见英文答案 >
Is there a regular expression to detect a valid regular expression?8个
@H_502_1@我正在阅读正则表达式解析器的代码,并开始怀疑正则表达式的语法本身是否是常规的,并且可以用另一个(非常复杂的)正则表达式表达?
rere = "" # the regular expression of regular language match1 = re.match(rere,"[a-z]+@[a-z]+.com") # True match2 = re.match(rere,")az[") # False
我没有在正则表达式语法中看到任何递归结构,所以我想也许这是可行的?
如果是,表达式是什么样的?@H_502_1@如果没有,为什么?
您无法使用正则表达式解析嵌套括号,因为您需要无限状态才能执行此操作.所以答案是否定的.您正在寻找的是
context-free grammars.