本网站正在建设中(~ ̄▽ ̄)~
- 你好~!欢迎来到中文歌声合成个人收集站-VCPedia.cn!
- 若发现页面信息有误或投稿至本站,请联系管理员。
Module:模糊时间/doc
这是Module:模糊时间的文档页面
模糊时间模块用于匹配获取一个时间文本,进而,可以进行时间计算、时间比较、时区调整、依据给定的格式进行格式化。 与其他时间函数不同之处在于,本模块支持不规范的、模糊描述以及时间段描述的文本,并允许在格式化时省略精确度不足的内容。
函数
initialize(from,to,connect)
初始化设置。
from
为文本语言,可选zh
/en
/all
,默认为zh
。to
为格式化目标语言,可选zh
/en
,默认为zh
。- connect为时间连接符,指格式化时使用时间段概念时连接两时间点的文本。默认为
到
。
toTime(text,analysis_pattern)
将文本解析转换为time表
。time表
具有os.time
可以识别的结构。
- 能识别ISO 8601格式的时间,如
2025-06-15T15:21:35+00:00
。但暂不识别追加的时区文本。 - 能识别带有单位的文本,如
2012年
。支持乱序。 - 能识别特定的时间描述,如
星期五
凌晨
。 - 字符
到
至
-
\
被视为时间段的描述关键字。 - 字符
%s
中文空格,
被忽略。
基本可以认为,所有该函数可以输出的格式化格式,都可以被其识别。
如果指定analysis_pattern
,则将使用固定的格式进行匹配。对于固定格式的文本,将大大节省解析时间。其中格式匹配符与#占位符标准相同。没有指定该参数的场合,函数将试图使用所有可能的格式进行分析匹配。
time表的属性
year
,month
,day
,week
,wday
,yday
,hour
,minute
,second
。
time表的函数
time表可以执行以下函数:
运算符
time:__connect(other)
即..
。连接两时间,获得时间段。
time:__add(other)
即+
。时间加法。
time:__sub(other)
即-
。时间减法。
其他函数
time:add(tag,value)
按标签计算。标签可以为属性其一。暂且唯有原time中具有该精确度的标签才有效。
time:convert(o_timezone,c_timezone)
时区转换。
c_timezone
默认为当前时区。o_timezone
默认为{{TimeZone}}所定义的时区。
time:supply(other,pre,after)
补足精确度。使用另一时间对其补足缺失的精确度以及值。已有部分则忽略。
pre
为true则补足前部缺失值(如年、月),after
设置为true则补足后部缺失值(如秒、分)。两参数默认为true。
time:getNumber()
获取时间段前后的对应os.time
数值。
time:sort()
规范数据,计算后如果需要从属性获得准确值需调用。在格式化前会自动调用。
time:format(pattern,ignore)
格式化为文本。
ignore
如果为true
,则在非必要时忽略区域性描述(诸如旬)(如果精确度只达到该描述,则不省略)。如果为false
,则强制要求所有精确度都输出值。ignore
默认为nil
,此时正常输出,忽略不具备的精确度。
其中pattern
的占位符标准详见#占位符。
format(text,pattern,ignore,o_timezone,c_timezone,a_pattern)
格式化输出。这个函数是功能的集合版本。
text
为时间文本ignore
同上。pattern
的占位符标准详见#格式化。o_timezone
原时区,即文本使用时区c_timezone
现时区,即显示时区。默认采用{{timezone}}模板定义的时区。a_pattern
,分析用字符串。
格式化
格式化使用到
作为时间段描述方式(或许可以考虑增加到占位符中)。
格式化使用的替换用占位符如下。
待扩展中文数字表达。
Lua错误 在package.lua的第80行:module 'Module:queue' not found
示例时间:Template:模糊时间
类型 | 格式化参数 | 说明 | 输出 |
---|