我正在寻找一些有效的正则表达式匹配算法。
类似于具有2个参数的函数,第一个是正则表达式,第二个是需要与此正则表达式匹配的字符串。
我写了一个简单的程序,不断逐个字符地解析,并根据*,?,[]模式做出决定,但我正在寻找更简单有效的解决方案。
我认为必须有某种状态机。
答案 0 :(得分:2)
正则表达式和有限自动机之间存在直接等价关系。以下是对非确定性有限自动机转换的正则表达式的总结,并进行了性能分析:http://swtch.com/~rsc/regexp/regexp1.html。它还包括将NFA转换为DFA。