Mij冰
2021-06-18 16:33
采纳率: 50%
浏览 71

用正则表达式补全日期,单数前面加0

2021-1-1 补全为 2021-01-01

2022-12-1 补全为 2022-12-01

2018-6-12 补全为 2018-06-12

怎么用正则表达式,完成上面的操作呢?

import re

t1 = '2021-11-1'

t2 = '2021-12-1'

t3= '2021-6-12'

for i in [t1,t2,t3]:

    t4 = re.sub('-(?=[1-9][^0-9]?)', '-0', i)

    print(t4)
#输出如下
2021-011-01
2021-012-01
2021-06-012
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

3条回答 默认 最新

  • 已采纳
    import re
    t1 = '2021-11-1'
    t2 = '2021-12-1'
    t3= '2021-6-12'
    for i in [t1,t2,t3]:
        t4 = re.sub('-(?=[1-9]([^0-9]|$))', '-0', i)
        print(t4)
    

    已采纳该答案
    2 打赏 评论
  • li.siyuan 2021-06-18 16:36

    将日期进行格式化就可以达到目的,无需正则表达式

    print(time.strftime("%Y-%m-%d %H:%M:%S", time.localtime()))
    打赏 评论
  • 有问必答小助手 2021-06-21 17:40

    您好,我是有问必答小助手,您的问题已经有小伙伴解答了,您看下是否解决,可以追评进行沟通哦~

    如果有您比较满意的答案 / 帮您提供解决思路的答案,可以点击【采纳】按钮,给回答的小伙伴一些鼓励哦~~

    ps:问答VIP仅需29元,即可享受5次/月 有问必答服务,了解详情>>>https://vip.csdn.net/askvip?utm_source=1146287632

    打赏 评论

相关推荐 更多相似问题