我的数据格式:2018年8月3日。
我需要分别从上述数据格式中获取日,月和年。
下一个片段已用于寻找一天。不幸的是,它不适用于错误“试图连接字段'day'(函数值)。”:
local exampleArray = {data = "", day = "", month = "", year = ""}
exampleArray["day"]=string.gmatch(entitiesArray["data"], '%d*%.?%d+')
也许是错误的正则表达式。那么,什么正则表达式可以解决问题呢?
此外,除了使用正则表达式外,还有其他解决方法吗?
答案 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
是为了循环使用。