【发布时间】:2016-12-15 02:22:35
【问题描述】:
我有一个格式如下的字符串:“a3b12a5g625”。首先是一个字母,然后是一个数字。可以有任意数量的这些对,从 1 到很多。
我对 lua 很陌生,我正在尝试迭代这些对。如何做到这一点?
【问题讨论】:
标签: lua
我有一个格式如下的字符串:“a3b12a5g625”。首先是一个字母,然后是一个数字。可以有任意数量的这些对,从 1 到很多。
我对 lua 很陌生,我正在尝试迭代这些对。如何做到这一点?
【问题讨论】:
标签: lua
如果你想分开,那么使用
local str = "a3b12a5g625"
for a,b in string.gmatch(str, "(%a+)(%d+)") do
print(a,b)
end
【讨论】:
您可以将string.gmatch 与pattern 一起使用:%a+%d+:
local str = "a3b12a5g625"
for pair in string.gmatch(str, "%a+%d+") do
print(pair)
end
输出:
a3
b12
a5
g625
如果您希望将数字和字母拆分为单独的变量,请将每个模式项包装在一个捕获组中:
local str = "a3b12a5g625"
for letters, numbers in string.gmatch(str, "(%a+)(%d+)") do
print(letters, " ", numbers)
end
输出:
a 3
b 12
a 5
g 625
【讨论】: