我有一个长的可变字符串存储在表索引中,如下所示:
render().
我有一个从文件中读取的主机名列表,这些主机名以字符串形式返回。我正在用for循环进行遍历。
my_table[4] = MYHOST1.fully.qualfied.com
由于某些原因:
MYHOST1 MYHOST2 MYHOST3
不匹配,即使“ match_string”保留了我表中的正确值,而“ machine”却保留了我反复遍历的正确名称。在这里,我需要对可变字符串做些特殊的事情吗?
print (string.match(match_string, machine))
结束
结束
================================================ =============
答案 0 :(得分:0)
因此,这没有任何问题。我最初对机器名称的匹配也是在机器名称之后捕获空格。在打印由定界符包围的机器名称后,我发现了这一点。我必须为此添加修剪功能。
这是我添加的功能:
function trim(string)
local trimmed = string:find"%S"
return trimmed and string:match(".*%S", trimmed) or ""
end
这让我将机器名作为变量传递,并剪切结尾的空格。最好在比赛中删掉空格,但我想不出办法将其留为定界符(这对于制表符分隔的值很重要)