Python | 正则表达式将日期格式化
import re
def format_date(date):
# 如果匹配没有结果,则返回默认的日期,这里设置不设置默认的日期,自己决定
product_date = "1999-01-01"
if date:
dt = re.findall("(\d{4})年(\d{0,2})月?(\d{0,2})", date)
# if判断是否为空
if dt:
# 如果匹配成功,年份就肯定是有的
year, month, day = dt[0]
# month 月份
if month:
if len(month) == 1:
month = "0" + month
else:
month = "01"
# day 日
if day:
if len(day) == 1:
day = "0" + day
else:
day = "01"
product_date = "{}-{}-{}".format(year, month, day)
print(roduct_date)
示例:
format_date("2022年3月29日")
# 2022-03-29
format_date("2022年3月")
# 2022-03-01
format_date("2022年")
# 2022-01-01
这里只提供使用正则表达式将日期格式化的思想,具体应用还需要将代码自定义.

浙公网安备 33010602011771号