在正则表达式中查找两个模式

时间:2017-05-14 18:57:42

标签: c# regex

我对正则表达有点新意。

我想在Html页面中找到所有具有src和href的标签。我发现了这个,他们分开工作,但不是一起工作。

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

任何想法?

感谢。

1 个答案:

答案 0 :(得分:1)

要在C#中解析HTML,您应该使用HTML解析器,例如HtmlAgilityPack

至于将2种模式与捕获组和反向引用“组合”,您应该始终记住,无论交替运算符如何,捕获组都是从左到右编号,因此,在您的模式中,有4个捕获组(使用{{ 1}} = 1,2,3,4)因此,您需要将ID替换为\\1