【发布时间】:2017-10-21 09:41:56
【问题描述】:
(对不起,我的英语不好)
我要做的是在 Lua 的字符串中匹配一个单词(有或没有数字和特殊字符)或空白字符(空格、制表符、可选的新行)。
例如:
local my_string = "foo bar"
my_string:match(regex) --> should return 'foo', ' ', 'bar'
my_string = " 123!@." -- note: three whitespaces before '123!@.'
my_string:match(regex) --> should return ' ', ' ', ' ', '123!@.'
regex 是我要求的 Lua 正则表达式模式。
当然,我在谷歌上做了一些研究,但我找不到任何有用的东西。到目前为止我得到的是[%s%S]+ 和[%s+%S+],但它似乎不起作用。
使用标准库的任何解决方案,例如string.find、string.gmatch 等都可以。
【问题讨论】:
-
从描述看来,模式应该用一个空格分隔,但您尝试过的示例都匹配一个或多个。
-
@Dimitry 我的标题提到了“一个单词或空格”,其中“空格”是复数形式,所以多个空格或一个单词。描述中也一样。正如我所说,我的英语远不是最好的,所以如果我错了,请纠正我。
标签: lua lua-patterns