Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/lua/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Lua 使用string.find_Lua_Coronasdk - Fatal编程技术网

Lua 使用string.find

Lua 使用string.find,lua,coronasdk,Lua,Coronasdk,我正在尝试编写一些代码,查看两个数据集并匹配它们(如果匹配),目前我使用的是string.find,这是一种工作,但非常严格。例如:它适用于检查1,但不适用于检查2/3,因为提要中有空格或其他单词。我想把这三个球都打回去,但我怎么能做到呢?(可能匹配超过4个字符?) PS:我尝试过gfind、gmatch、match,但它们没有成功find只进行直接匹配,因此如果您正在搜索的字符串不是您正在搜索的子字符串(对字符集和特殊字符进行了一些模式处理),则不会得到匹配 如果您对匹配示例中列出的字符串感兴

我正在尝试编写一些代码,查看两个数据集并匹配它们(如果匹配),目前我使用的是string.find,这是一种工作,但非常严格。例如:它适用于检查1,但不适用于检查2/3,因为提要中有空格或其他单词。我想把这三个球都打回去,但我怎么能做到呢?(可能匹配超过4个字符?)


PS:我尝试过gfind、gmatch、match,但它们没有成功

find
只进行直接匹配,因此如果您正在搜索的字符串不是您正在搜索的子字符串(对字符集和特殊字符进行了一些模式处理),则不会得到匹配


如果您对匹配示例中列出的字符串感兴趣,则需要查看模糊搜索。也可能有帮助。我已经实现了第二个示例中列出的算法,但是基于.

Lua的
字符串的二元和三元匹配得到了更好的结果。find
不仅适用于精确的字符串,也适用于模式。但是语法与“检查”中的语法有点不同。您希望check2是
“jan.+”
以匹配“jan”,后跟一个或多个字符。您的第三张支票必须是
jan.+kevin
。在这里,点代表任何字符,而下面的加号表示这可能是一个或多个字符的序列。更多信息请访问

check1 = 'jan'
check2 = 'janAnd'
check3 = 'jan kevin'

input = 'jan is friends with kevin'

if string.find(input.. "" , check1 )  then
print("match on jan")
end

if string.find( input.. "" , check2 )  then
print("match on jan and")
end

if string.find( input.. "" , check3 )  then
print("match on jan kevin")
end