<h1> - <h6>
html の html ヘッダーを python 正規表現と一致させたい。一部のヘッダーには'id'属性が含まれており、グループに入れたいと考えています。
次の式を試すと、id 属性を持つ式が得られます。
>>>re.findall(r'<h[1-6].*?(id=\".*?\").*?</h[1-6].*?>','<h1>Header1</h1><h2 id="header2">header2</h2>')
['id="header2"']
疑問符により、RE は先行する RE の 0 回または 1 回の繰り返しに一致します。私が入れたら?右括弧の後に、2 つの空の文字列が返されます。
>>>re.findall(r'<h[1-6].*?(id=\".*?\")?.*?</h[1-6].*?>','<h1>Header1</h1><h2 id="header2">header2</h2>')
['', '']
次の結果を得るために 1 つの正規表現を使用する方法は?
['', 'id="header2"']