「http」または「https」で始まり、特定のドメインを含む任意の URL に一致する正規表現を探しています。ドメインが「stackoverflow.com」の場合、すべてのドメインとサブドメインの一致を文字列から抽出し(.comのみ、.net、.orgなどは一致しないはずです)、リストに追加する必要がありますすべてのマッチをループします。それ、どうやったら出来るの?
これまでのところ、これが私が見つけた最善の回避策です (「somestring」という文字列を検索し、結果をリスト「myList」に追加します)。
Regex r = new Regex(@"(?<Protocol>\w+):\/\/(?<Domain>[\w@][\w.:@]+)\/?[\w\.?=%&=\-@/$,]*");
Match m = r.Match(somestring);
while (m.Success)
{
if ((m.Value).Contains("stackoverflow.com"))
{
myList.Add(m.Value);
}
m = m.NextMatch();
}