質問: 正規表現で特定の文字列以外を削除したい htmlで何千行もあって、 以下の定義に当てはまる記述以外のみを残したい(それ以外を削除したい)場合には、
回答: HTML などの XML 系マークアップ言語の要素抽出には、 正規表現はあまり向きません。あえて書けば、 /.*?<\/a\s*>/igm という感じかと。 一般的には、XPath を使います。 探したい要素は、 //a[contains(@href, 'https' + '://hogehoge.com/')][@target='_blank'] という感じなので、 libxml2 に付属してくる xmllint などを使って、 xmllint --xpath "上の表現" HTML_FILE とします。