2017-05-14 23 views
2

私は正規表現に新しいことがあります。正規表現で2つのパターンを見つける

srcとhrefを持つすべてのタグをHtmlページで探したいとします。私はこれを見つけて、彼らは別々に働いていますが、一緒には働いていません。

string pattern = "<(?:[^>]*?\\s+)?src=([\"'])(.*?)\\1|<(?:[^>]*?\\s+)?href=([\"'])(.*?)\\1"; 

ありがとうございました。

+1

はい、バックリファレンスが含まれているためです。最後の '\\ 1 'を' \\ 3'に変更してください。 –

+0

それは働いた。ありがとう。 – Amir

答えて

1

C#でHTMLを解析するには、HtmlAgilityPackのようなHTMLパーサーを使用する必要があります。 ID

グループと後方参照を捕捉して2パターン「を組み合わせる」として、あなたは常にキャプチャグループは左から右にかかわらず、交代演算子のに番号が付けられていることを忘れてはならないが、そう、あなたのパターンで、4つのキャプチャグループがあります( = 1,2,3,4)ので、\\1\\3に置き換える必要があります。

関連する問題