模块:ISODate/doc查看源代码查看历史
这是模块:ISODate的文档页面
此Luazh-cn:模块; zh-tw:模組;在3,000个页面+中使用,修改会造成广泛的影响。请先在zh-cn:模块; zh-tw:模組;的/sandbox或者/testcases子页面测试。修改前请考虑至讨论页讨论变更。 |
本模块用于将各类日期转换为ISO 8601格式,以方便{{#time}}
函数和其他模板调用。
用法
输入完整日期,只输入年月、只输入年份皆可:
{{#invoke:ISODate|dates|1994年10月26日}}
→ 1994-10-26{{#invoke:ISODate|dates|1994年10月}}
→ 1994-10{{#invoke:ISODate|dates|1994年}}
→ 1994
当月和日是个位数时,十位加“0”或不加“0”皆可,模块会自动补“0”,
{{#invoke:ISODate|dates|1994年8月1日}}
→ 1994-08-01{{#invoke:ISODate|dates|1994年08月01日}}
→ 1994-08-01
可以转换英文和不规范的ISO 8601日期:
{{#invoke:ISODate|dates|October 26, 1994}}
→ 1994-10-26{{#invoke:ISODate|dates|26 Oct 1994}}
→ 1994-10-26{{#invoke:ISODate|dates|Sept 1994}}
→ 1994-09{{#invoke:ISODate|dates|1994-8-1}}
→ 1994-08-01{{#invoke:ISODate|dates|1994-8}}
→ 1994-08
如果字符串以正确的日期开头,则会转换并忽视后缀文字:
{{#invoke:ISODate|dates|1994年10月26日,武汉}}
→ 1994-10-26{{#invoke:ISODate|dates|1994年10月26日,武汉|suffix=yes}}
→ 1994-10-26,武汉(将suffix
字段设为yes
展示后缀)
以不合法日期开头则报错:
{{#invoke:ISODate|dates|一九九四年十月二十六日}}
→ 错误:无效时间。{{#invoke:ISODate|dates|1994年13月32日}}
→ 错误:无效时间。{{#invoke:ISODate|dates|一九九四年十月二十六日|error=ignore}}
→ 一九九四年十月二十六日(将error
字段设为ignore
返回输入值)
ISO 8601标准只规定了1583年之后的日期标准,请勿用本模块表示这之前的日期,否则可能会得到不期待的结果:
{{#invoke:ISODate|dates|25年8月5日(东汉建立)|suffix=yes}}
→ 0023-08-05(东汉建立)