re.match(r'<([\w]+>)[\w]+</\1','<book>python</book>')問題
re.match(r'<([\w]+>)[\w]+</\1','<book>python</book>')這個的匹配結果為什么不是<book>python</?
下面一個<book>python</book1>,為什么加1后就匹配不出來了?
re.match(r'<([\w]+>)[\w]+</\1','<book>python</book>')這個的匹配結果為什么不是<book>python</?
下面一個<book>python</book1>,為什么加1后就匹配不出來了?
2017-12-25
舉報
2017-12-25
\1就是代表了前面“([\w]+>)”這些內(nèi)容,你將\1替換掉就成了ma=re.match(r'<([\w]+>)[\w]+</([\w]+>)','<book>python</book>')? 其中括號已經(jīng)沒有意義,去掉后就變成ma=re.match(r'<[\w]+>[\w]+</[\w]+>','<book>python</book>')? 這樣看就應該沒問題了吧。
后面加1匹配不出來的原因也是應為</book>這個字符串匹配不到的緣故。