是否可以仅使用正则表达式来检测给定字符串是否是有效的正则表达式?
假设我有一些字符串,它们可能是也可能不是有效的正则表达式。我想要一个正则表达式与对应于有效正则表达式的那些字符串相匹配。那可能吗?或者我是否使用一些更高级别的语法(即上下文无关语言)来检测这一点?如果我使用某些扩展版本的正则表达式(例如 Perl 正则表达式),这会影响吗?
如果可能的话,匹配正则表达式的正则表达式是什么?
不,这是不可能的。这是因为有效的正则表达式涉及分组,这需要平衡括号。
平衡分隔符不能与正则表达式匹配;相反,它们必须与上下文无关语法 http://en.wikipedia.org/wiki/Context-free_grammar. (The 第一个例子 http://en.wikipedia.org/wiki/Context-free_grammar#Example_1那篇文章涉及平衡括号。)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)