2

有没有办法遍历逗号分隔的字符串,然后对匹配项做些什么?到目前为止,我有:

for a in string.gmatch("this, is, a commaseparated, string", "(.-)[,]") do
  print (a)
end

问题是找不到表中的最后一个条目。在 C 中,可以通过匹配NULL来检查您是否位于字符串的末尾。Lua中有类似的东西吗?

4

1 回答 1

4

试试这个:

for a in string.gmatch("this, is, a commaseparated, string", "([^,]+),?") do
    print (a)
end

正则表达式模式([^,]+),?捕获一个或多个非逗号字符,可选地后跟一个逗号。

于 2011-03-24T05:43:03.163 回答