我使用Lua将以下字符串拆分为表: (数据彼此对齐.我没有找到如何在此网站上编写格式的数据) IP: 192.168.128.12 MAC: AF:3G:9F:c9:32:2E Expires: Fri Aug 13 20:04:53 2010 Time Left: 11040 seconds 结果应该放在
(数据彼此对齐.我没有找到如何在此网站上编写格式的数据)
IP: 192.168.128.12
MAC: AF:3G:9F:c9:32:2E
Expires: Fri Aug 13 20:04:53 2010
Time Left: 11040 seconds
结果应该放在这样的表中:
t = {“IP” : “192.168.128.12”, “MAC” : “AF:3G:9F:c9:32:2E”, “Expires” : “Fri Aug 13 20:04:53 2010”, “Time Left” : “11040 seconds”}
我尝试过:
for k,v in string.gmatch(data, "([%w]+):([%w%p%s]+\n") do t[k] = v end
那是我最好的尝试.
如果我理解你的用例,以下应该可以解决问题.可能需要稍微调整一下.local s = "IP: 192.168.128.12 MAC: AF:3G:9F:c9:32:2E Expires: Fri Aug 13 20:04:53 2010 Time Left: 11040 seconds" local result = {} result["IP"] = s:match("IP: (%d+.%d+.%d+.%d+)") result["MAC"] = s:match("MAC: (%w+:%w+:%w+:%w+:%w+:%w+)") result["Expires"] = s:match("Expires: (%w+ %w+ %d+ %d+:%d+:%d+ %d+)") result["Time Left"] = s:match("Time Left: (%d+ %w+)")