【发布时间】:2011-03-19 05:11:58
【问题描述】:
在阅读了 RE/NFA 和 DFA 之后,似乎使用 RE 而不是蛮力 O(mn) 查找,在字符串中查找子字符串实际上可能会渐近更快。我的理由是 DFA 实际上会保持状态并避免多次处理“干草堆”中的每个字符。因此,如果使用正则表达式,在长字符串中的搜索实际上可能会快得多。
当然,这仅对从 NFA 转换为 DFA 的 RE 匹配器有效。
有没有人在现实生活中使用 RE 而不是暴力匹配器时体验到更好的字符串匹配性能?
【问题讨论】:
标签: regex string regular-language