Sat*_*hJM 2 string lua string-matching
说我有一个字符串
local a = "Hello universe"
Run Code Online (Sandbox Code Playgroud)
我发现子串"宇宙"
a:find("universe")
Run Code Online (Sandbox Code Playgroud)
现在,假设字符串是
local a = "un#verse"
Run Code Online (Sandbox Code Playgroud)
要搜索的字符串是Universe; 但子字符串因单个字符而异.显然Lua忽略了它.
即使单个字符存在差异,如何使函数找到字符串?
如果您知道角色的位置,请使用.
而不是该角色:a:find("un.verse")
但是,看起来您正在寻找模糊字符串搜索.它不属于Lua string
库的范围.您可能想要从这篇文章开始:http://ntz-develop.blogspot.com/2011/03/fuzzy-string-search.html
至于Lua模糊搜索实现 - 我没有使用任何,但googing"lua模糊搜索"给出了一些结果.一些是基于这篇论文:http://web.archive.org/web/20070518080535/http : //www.heise.de/ct/english/97/04/386/
试试https://github.com/ajsher/luafuzzy.