我试图将一个字符串分割为一个点,但保留两个(和更多)点。
我的方法是这样的,仅适用于双点:
local s = "some string.. with several dots, added....more dots.another line inserted."; for line in s:gsub('%.%.','#&'):gmatch('[^%.]+') do print(line:gsub('#&','..')); end
另一种方法是这样的
print(s:match('([^%.]+[%.]*[^%.]+)'))
会在下一个点序列之后暂停,因此不合适。
如何在模式匹配中完成此操作?
local s = 'some string.. with several dots, added....more dots.another line inserted.'
for line in s:gsub("%f[.]%.%f[^.]", "\0"):gmatch"%Z+" do
print(line)
end
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句