最贊回答 / 為何_
小括號(hào)代表使用了分組,正則語法就是這樣,不必糾結(jié).就像python遇到xxx()就知道是調(diào)用函數(shù)一樣.\1?等于?前面括號(hào)里的匹配規(guī)則,就相當(dāng)于? ([\w]+>)\1? =??([\w]+>)[\w]+>兩次這個(gè)匹配規(guī)則.你可以理解成\1是個(gè)變量,保存了前面括號(hào)里的匹配語法并使用? 即 \1 = (匹配語法),? ?使用\1?就是使用括號(hào)里語法? ? 有幫助的話請(qǐng)給個(gè)最佳回答
2019-12-22
最新回答 / 大龍貓_
網(wǎng)頁更新了,你可以這樣寫:r'src=//.+\.jpg' , buf?先把//雙斜杠打頭的這些給抓出來,再在前面加上? added_str = 'http:'再操作就行了
2019-09-27
ma = re.match(r'(<)([\w]+>)\1\2', '<book><book>') 等價(jià)于 ma = re.match(r'(<)([\w]+>)<book>', '<book><book>')
print(ma.groups())
# ('<', 'book>') \1 表示< \2 表示 book>
print(ma.groups())
# ('<', 'book>') \1 表示< \2 表示 book>
2019-07-28
ma = re.match(r'<([\w]+>)', '<book>')
print(ma.groups()) # ('book>',)
ma = re.match(r'<([\w]+>)\1', '<book>book>')
print(ma.groups()) # ('book>',)
ma = re.match(r'(<)([\w]+>)\1\2', '<book><book>')
print(ma.groups()) # ('book>',)
('book>',)
('book>',)
('<', 'book>')
print(ma.groups()) # ('book>',)
ma = re.match(r'<([\w]+>)\1', '<book>book>')
print(ma.groups()) # ('book>',)
ma = re.match(r'(<)([\w]+>)\1\2', '<book><book>')
print(ma.groups()) # ('book>',)
('book>',)
('book>',)
('<', 'book>')
2019-07-28
“ma = re.match(r'<([\w]+>)\1', '<book>') ”中 “\1”代表的就是括號(hào)里面的分組,而括號(hào)里面的分組自身出現(xiàn)了一次,所以這行代碼的分組一共出現(xiàn)了兩次。但逗號(hào)后面的字符串卻只包含一個(gè)分組,所以匹配失敗,print(ma.groups())返回 NoneType。改為ma = re.match(r'<([\w]+>)', '<book>') 或者 ma = re.match(r'<([\w]+>)', '<book>book>') 就可以了。簡而言之,\1表示的是第一個(gè)分組的復(fù)用。如果有多個(gè)圓括號(hào),即有多個(gè)分組,那么\num代表的是第num個(gè)分組的復(fù)用。
2019-07-28