本网站正在建设中(~ ̄▽ ̄)~
- 你好~!欢迎来到中文歌声合成个人收集站-VCPedia.cn!
- 若发现页面信息有误或投稿至本站,请联系管理员。
模組:模糊時間/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-17T12:59:21+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:模糊時間
類型 | 格式化參數 | 說明 | 輸出 |
---|