请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

正则表达式为什么不能匹配[.]呢?

https://img1.sycdn.imooc.com/szimg//598693c600016df809460718.jpg

因为年月日也有可能是这种格式,2001.06.01

正在回答

插入代码

3回答

1
2
3
4
5
6
7
8
9
10
11
12
13
import re
 
# line = "XXX出生于2001年6月1日"
# line = "XXX出生于2001/6/1"
# line = "XXX出生于2001-6-1"
# line = "XXX出生于2001-06-01"
line = "XXX出生于2001-06-01"
# line = "XXX出生于2001.06"
 
regex_str = ".*出生于(\d{4}[年/\-.]\d{1,2}([月/\-.]\d{1,2}日|[月/\-.]$|$|[月/\-.]\d{1,2}))"
match_obj = re.match(regex_str, line)
if match_obj:
    print(match_obj.group(1))

短横线在中括号中有特殊含义 你需要先转移才行, 参考上面的代码

1 回复 有任何疑惑可以回复我~
  • 提问者 抓住彩虹 #1
    谢谢老师
    回复 有任何疑惑可以回复我~ 2017-08-14 17:34:23
提问者 抓住彩虹 2017-08-08 17:27:41
1
2
3
4
5
6
7
8
9
10
11
12
13
import re
 
# line = "XXX出生于2001年6月1日"
# line = "XXX出生于2001/6/1"
# line = "XXX出生于2001-6-1"
# line = "XXX出生于2001-06-01"
line = "XXX出生于2001.06.01"
# line = "XXX出生于2001.06"
 
regex_str = ".*出生于(\d{4}[年/-.]\d{1,2}([月/-.]\d{1,2}日|[月/-.]$|$|[月/-.]\d{1,2}))"
match_obj = re.match(regex_str, line)
if match_obj:
    print(match_obj.group(1))


0 回复 有任何疑惑可以回复我~
bobby 2017-08-07 09:56:58

你将代码贴上来 我在我这边调试一下看看呢

0 回复 有任何疑惑可以回复我~
问题已解决,确定采纳
还有疑问,暂不采纳
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号