即时用户输入有一些额外的或改变的字母,我正在研究正则表达式来匹配单词。例如,如果用户输入为pgone
,则我的正则表达式仍应与phone
匹配,或者如果用户输入为phini
,则它也应该与phone
匹配。我不知道如何做到这一点。REGEXP智能外部字母检测
我曾尝试以下,但它符合我一些多余的话:
[[:<:]](p|)[a-zA-Z]{0,2}(g|)[a-zA-Z]{0,2}(o|)[a-zA-Z]{0,2}(n|)[a-zA-Z]{0,2}(e|)[a-zA-Z]{0,}[[:>:]]
。
http://php.net/levenshtein –
这可以通过将可接受拼写错误映射到“正确”单词的映射或者将编辑距离映射到目标单词的度量来完成。正则表达式方法对于您的目标将迅速增长无法管理。 – dawg