我在中括号中加入点字符无法识别".*(\d{4}[年/-.]\d{1,2}([月/-.]\d{1,2}|[月/-.]$|$))"
来源:3-4 正则表达式-3
剧毒碳酸0
2017-11-21
#_*_ coding: utf-8 _*_ __author__ = 'wangyh' import re #提取年龄 line = ["xxx出生于2011年11月11日","xxx出生于2012.11.01","xxx出生于1991/01/03", "xxx出生于2011-1-11","xxx出生于2011/11","xxx出生于2011-11"] regex_str = ".*(\d{4}[.年/-]\d{1,2}([.月/-]\d{1,2}|[.月/-]$|$))" for l in line: match_obj = re.match(regex_str,l) if (match_obj): print(match_obj.group(1))
写回答
1回答
-
剧毒碳酸0
提问者
2017-11-21
补充一下,点加入的位置不同对代码是有影响的。上述代码可以正常运行,但是改成
".*(\d{4}[年/-.]\d{1,2}([月/-.]\d{1,2}|[月/-.]$|$))"
就无法正常运行了
012017-11-23
相似问题
[年-\] 这样写为什么会报错?
回答 2
正则表达式3视频示例不完善
回答 5
觉得我写的日期正则表达式比老师的好
回答 2
正则表达式为什么不能匹配[.]呢?
回答 3
正则表达式提取日期
回答 1