从Lua中的数据获取日,月,年

时间:2018-08-03 09:15:33

标签: lua

我的数据格式:2018年8月3日。

我需要分别从上述数据格式中获取日,月和年。

下一个片段已用于寻找一天。不幸的是,它不适用于错误“试图连接字段'day'(函数值)。”:

local exampleArray = {data = "", day = "", month = "", year = ""}
exampleArray["day"]=string.gmatch(entitiesArray["data"], '%d*%.?%d+')

也许是错误的正则表达式。那么,什么正则表达式可以解决问题呢?

此外,除了使用正则表达式外,还有其他解决方法吗?

1 个答案:

答案 0 :(得分:2)

如果输入字符串为3 august 2018,则您希望将其分成三个单词,一个单词定义为一系列非空格字符。符合此描述的模式是这样的:

s = "3 august 2018"
d,m,y = s:match("(%S+)%s+(%S+)%s+(%S+)")
print(d,m,y)

请注意,使用match代替gmatch是为了循环使用。