2010-07-11 38 views
1

嗨,任何人都可以告诉我为什么我们没有在现代编程实践中使用Knuth Morris Pratt算法,并且更喜欢正则表达式?正则表达式与KMP

回答

1

是否有多个KMP算法?我的理解是,有一种算法用于执行另一个字符串内的字符串搜索。正则表达式更加灵活 - 没有理由说明一个非常简单的正则表达式无法使用KMP - 这取决于实现者。

+0

另一种算法是boyer-Moore,它借用了我猜测的一些KMP。 下面的链接说,我们在失配期间计算下一次移位的方式有点类似于有限自动机。话虽如此,我假设我们的正则表达式中有一些KMP。 http://www.ics.uci.edu/~eppstein/161/960227.html – realnumber 2010-07-13 00:02:26

+0

无论哪种方式,内存,正则表达式都能正常工作,而且效果很好 - 不要修复未破坏的内容! :) – 2010-07-13 00:15:39