python正则表达式日期格式

时间:2012-05-07 14:57:09

标签: python regex date

尝试编写RE以识别Python中的日期格式mm / dd

reg = "((1[0-2])|(0?[1-9]))/((1[0-9])|(2[0-9])|(3[0-1])|(0?[0-9]))"
match = re.findall(reg, text, re.IGNORECASE)
print match

text = '4/13'它给了我

[('4', '4', '', '13', '13', '', '', '')]

但不是

'4/13'

谢谢, 程

2 个答案:

答案 0 :(得分:3)

不要使用re.findall。使用re.match

reg = "((0?[1-9])|(1[0-2]))/((1[0-9])|(2[0-9])|(3[0-1])|(0?[0-9]))"
match = re.match(reg, text, re.IGNORECASE)
print match.group()

答案 1 :(得分:1)

其他答案更直接,但您还可以在正则表达式周围添加额外的一对括号:

reg = "(((0?[1-9])|(1[0-2]))/((1[0-9])|(2[0-9])|(3[0-1])|(0?[0-9])))"

现在findall会给你:

[('4/13', '4', '4', '', '13', '13', '', '', '')]

您现在可以从上方提取'4/13'