Python日期时间通用匹配工具dateutil,匹配中文

Posted zhangphil

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python日期时间通用匹配工具dateutil,匹配中文相关的知识,希望对你有一定的参考价值。

Python日期时间通用匹配工具dateutil,匹配中文

dateutil不能直接匹配中文,这里的策略是把日期时间中的中文字符删掉,合并成一条连续的数字字符串,然后交给dateutil匹配。

from pprint import pprint
import dateutil.parser as ps


def remove_chinese(char):
    # 检测是否是中文字符
    if '\\u4e00' <= char <= '\\u9fa5':
        return ''
    return char


if __name__ == '__main__':
    d1 = ps.parse('20220712195859')
    pprint(d1.strftime('%Y-%m-%d %H:%M:%S'))

    d2 = ps.parse('2022-07-2\\n')
    pprint(d2.strftime('%Y-%m-%d %H:%M:%S'))

    d3 = ps.parse('5:09:12')
    pprint(d3.strftime('%Y-%m-%d %H:%M:%S'))

    d4 = ps.parse('7-11 23:19\\n')
    pprint(d4.strftime('%Y-%m-%d %H:%M:%S'))

    d5 = ps.parse('2022/07/13 12:32')
    pprint(d5.strftime('%Y-%m-%d %H:%M:%S'))

    try:
        s6 = '2022年07月11日23时19分\\n'
        lst = filter(lambda x: remove_chinese(x), s6)  # 如果是中文字符则删掉
        d6 = ps.parse(''.join(lst))
        pprint(d6.strftime('%Y-%m-%d %H:%M:%S'))
    except:
        pprint('错误')
        pass

输出:

'2022-07-12 19:58:59'
'2022-07-02 00:00:00'
'2022-07-21 05:09:12'
'2022-07-11 23:19:00'
'2022-07-13 12:32:00'
'2022-07-11 23:19:00'

以上是关于Python日期时间通用匹配工具dateutil,匹配中文的主要内容,如果未能解决你的问题,请参考以下文章

Python3.x:日期库dateutil简介

7hutool实战:DateUtil(时间工具类)-日期计算

7hutool实战:DateUtil(时间工具类)-日期计算

java日期的运用(DateUtils工具类)

java日期工具类DateUtil

python - 如何在没有dateutil的情况下将时区感知字符串转换为Python中的日期时间?