为不匹配的正则表达式提供提示

时间:2012-08-14 18:10:39

标签: regex expression error-correction

有没有人(遇到过/工作过)提供有关使用提供的语法的无与伦比的正则表达式提示的工具?即想象一下正则表达式的一部分与某些令牌相匹配,但后者失败了:

(?P<name>[a-zA-Z])-(?P<number>\d+)_blah

说我们设法找到了这个名字,但是在“_”之前有一封信(例如“foo-123Z_blah”)或者“_blah”没有匹配(例如“foo-123_Zblah”)。

如果用户可以获得长期正则表达式中出错的提示并且可能会引入一些更正等,那将是非常好的。

我记得曾经读过Antlr非常善于逆转其解析过程,以便根据提供的语法定义为不正确的语言语句提供提示。是否有任何lilghtweight优先在Python做这样的事情?

谢谢!

1 个答案:

答案 0 :(得分:1)

您应该查看http://www.regexbuddy.com/以调试正则表达式。它有点像正则表达式IDE,有一个完整或常用的库,有关正则表达式组合的实时帮助以及测试/调试工具。

不幸的是,这不是免费的,但是他们收取的金额非常值得。调试工具非常棒,我相信它会对你有所帮助。它显示了哪些组件与字符串匹配,何时发生回溯,哪些符号等。

这是很棒的软件,强烈推荐!