我需要以的形式匹配日期
2012年1月10日
并以形式替换:
2012年1月10日
以下是我目前所拥有的:
pattern = re.findall(r'(?:January|February|March|April|May|June|July|August|September|October|November|December)sdd,sd{4}', text)
print pattern
我该如何更换?
使用strptime()
解析日期,使用strftime()
生成新字符串。在这种情况下没有理由使用正则表达式。
In [1]: import time
In [2]: tm = time.strptime('January 10, 2012', '%B %d, %Y')
In [3]: time.strftime('%d %B %Y', tm)
Out[4]: '10 January 2012'
一般来说,类似于以下内容:
查找:^(January) (d{1,2}), (d{4})$
替换$2 $1 $3