lua - 从 Lua 中的数据获取日、月、年
问题描述
我的数据格式:2018 年 8 月 3 日。
我需要从上述格式的数据中分别获取日、月和年。
下一个片段一直用于寻找一天。不幸的是,它不适用于错误“尝试连接字段'day'(函数值)。”:
local exampleArray = {data = "", day = "", month = "", year = ""}
exampleArray["day"]=string.gmatch(entitiesArray["data"], '%d*%.?%d+')
也许,这是一个错误的正则表达式。那么,解决问题的正则表达式是什么?
另外,除了使用正则表达式之外,是否存在其他解决方案?
解决方案
如果输入字符串是3 august 2018
,那么您希望将其拆分为三个单词,一个单词被定义为一系列非空白字符。符合这个描述的模式是这样的:
s = "3 august 2018"
d,m,y = s:match("(%S+)%s+(%S+)%s+(%S+)")
print(d,m,y)
请注意使用的match
而不是gmatch
,这意味着在循环中使用。
推荐阅读
- csv - 使用 rust 中的列表值列读取 CSV
- go - 最小化 PLL 频率计算中的整数舍入误差
- python - 带有 devpi 镜像的 nexus pypi 代理
- python - 当我尝试运行 PyCharm 社区版 2021.1.1 时。给我看这个:
- c# - 我用于更改存储在数据库中的值的新值输入没有改变
- javascript - 使用 javascript 在 PHP 中交换复选框
- python - 将字典保存为 Python 脚本
- node.js - 如何使用护照 js 在 req.body 中添加用户?
- interface - 显式选择接口实现的类似 Haskell TypeApplication 的方式
- ansible - Ansible 内置 Lineinfile 到 ~/.bashrc