目前,我有以下代码:
runtable={}
for _,v in pairs(akeys) do
if string.match(string.upper(v),string.upper(area)) then
table.insert(runtable,area)
break
end
end
if #runtable = 0 then
for i,_ in pairs(akeys) do
if string.match(string.upper(i),string.upper(area)) then
table.insert(runttable,area)
end
end
end
这个脚本的目的是先遍历所有的值,看看 area 变量是否与值匹配。如果是这样,它将是一次性的,因此它将停止循环并继续执行脚本的其余部分(超出if #runtable = 0
. 如果它未能在值中找到任何内容,则它会再次遍历列表,但这次将索引与区域进行比较,并且每次找到匹配项(部分或完整)时,它会将其添加到运行表中。
有没有更有效的方法来做到这一点?或者这是运行它的最佳方式,不管它看起来多么混乱?