【发布时间】:2020-11-03 13:59:15
【问题描述】:
目前,我正在将一堆字符串从家庭自动化控制器传递给我目前正在开发的驱动程序。
我收到诸如ZAA 之类的消息和其他可能是AA 的代码,但string.match 有时会将AA 与ZAA if 语句相匹配。
这个问题的传播范围远不止这两个字符串(可能大约有 10-15 个其他相似之处)。
我知道我可以在 if/elseif 语句中添加更多条件,但肯定有 exact 匹配版本吗?
任何想法将不胜感激。
示例; 即使字符串是“AA”,它也会匹配“ZAA”
stringInput = "AA"
if string.match("ZAA", stringInput) then
print("I matched: ZAA")
elseif string.match("AA", stringInput) then
print("I matched: AA")
end
【问题讨论】:
-
您的输入看起来如何?如果它以模式开头,那么你可以简单地匹配
'^AA'。否则,您能否添加一些示例输入? -
尝试反转参数:
string.match(stringInput,"ZAA").