为了账号安全,请及时绑定邮箱和手机立即绑定

re.match(r'<([\w]+>)[\w]+</\1','<book>python</book>')问题

http://img1.sycdn.imooc.com//5a4071ea0001bcc715080690.jpg

re.match(r'<([\w]+>)[\w]+</\1','<book>python</book>')这个的匹配结果为什么不是<book>python</?

下面一个<book>python</book1>,为什么加1后就匹配不出来了?



正在回答

1 回答

\1就是代表了前面“([\w]+>)”这些内容,你将\1替换掉就成了ma=re.match(r'<([\w]+>)[\w]+</([\w]+>)','<book>python</book>')  其中括号已经没有意义,去掉后就变成ma=re.match(r'<[\w]+>[\w]+</[\w]+>','<book>python</book>')  这样看就应该没问题了吧。

后面加1匹配不出来的原因也是应为</book>这个字符串匹配不到的缘故。

1 回复 有任何疑惑可以回复我~
#1

希希同学 提问者

非常感谢!
2017-12-27 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

re.match(r'<([\w]+>)[\w]+</\1','<book>python</book>')问题

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信