最近调试onvif协议,涉及到了时区格式的解析,没想到还挺复杂,反复看了几遍终于看懂。主要是参考Posix 1003.1
Section 8.3,下面算是翻译过来,加上正则表达式。
TZ
代表时区信息,TZ环境变量的内容用于ctime、localtime、mktime等等。
TZ的两种形式
1.
:characters
该种形式以冒号开始,后面的字符处理与实现相关。linux上表示从某个文件读时区信息,例如TZ=':Pacific/Auckland'。
2.
std offset dst offset,
rule
不以冒号开始的格式都算此种格式,扩展开来如下,[]里的字段代表是可选的:
stdoffset[dst[offset][,startdate[/time],enddate[/time]]]
TZ
代表时区信息,TZ环境变量的内容用于ctime、localtime、mktime等等。
TZ的两种形式
1.
该种形式以冒号开始,后面的字符处理与实现相关。linux上表示从某个文件读时区信息,例如TZ=':Pacific/Auckland'。
2.
不以冒号开始的格式都算此种格式,扩展开来如下,[]里的字段代表是可选的:
stdoffset[dst[offset][,startdate[/time],enddate[/time]]]
