RegexBuddy是一个很棒的工具。我想要的是一个优化正则表达式的工具;采取一些表达式并将它们缩小到较小的数字。有什么建议吗?
答案 0 :(得分:7)
正则表达式没有神奇的药丸。简单的交替冗余可能会有一些替代因素可以考虑,但就此而言。
总的来说,无法保证速度提升,甚至不需要提高速度。
最佳优化是编写正则表达式的经验。写得很糟的正则表达式总是会保持不变。一个写得很好且经过测试的人不会想要采用编程优化的机会。使用现代扩展正则表达式时尤其如此。
答案 1 :(得分:5)
如果您使用的是perl,则可以使用Regexp::Optimizer或Regexp::Assemble。
我不知道有任何在线工具可以满足您的要求。
答案 2 :(得分:0)
当您使用正则表达式时,它将被编译,然后是您指示它执行的更快版本。
E.g。编译器不会知道你是否犯了错误,这将产生许多后退步骤或任何东西。 RegexBuddy是要找出正则表达式将要做什么的方法,这样你就可以使你的模式更精确。
答案 3 :(得分:0)
对于Javascript,Python和PCRE正则表达式引擎,请尝试Debuggex。它显示了图解流程。我们可以基于此进一步优化。
接下来,我们得到了Regex101 debugger,它使我们可以逐步播放正则表达式匹配。