Я знаю, вы говорите, что должны использовать регулярные выражения, но если возможно, я бы действительно дал шанс этому проекту с открытым исходным кодом:
HtmlAgilityPack
Это действительно удобно, я только что обнаружил это, и оно мне очень помогло, так как я занимался более сложным html-анализом. Это в основном позволяет вам использовать XPATHS, чтобы получить ваши элементы.
Их примерная страница немного устарела, но API-интерфейс действительно прост для понимания, и если вы немного знакомы с xpaths, вы сможете обойти это сейчас
Код для вашего запроса будет выглядеть примерно так: (не скомпилированный код)
List<string> imgScrs = new List<string>();
HtmlDocument doc = new HtmlDocument();
doc.LoadHtml(htmlText);//or doc.Load(htmlFileStream)
var nodes = doc.DocumentNode.SelectNodes(@"//img[@src]"); s
foreach (var img in nodes)
{
HtmlAttribute att = img["src"];
imgScrs.Add(att.Value)
}