c# - 用于解析来自 html 代码的链接的正则表达式

标签 c# html regex parsing hyperlink

我正在研究一种接受字符串(html 代码)并返回一个数组的方法,该数组包含 in 中包含的所有链接。

我已经看到一些类似 html ability pack 的选项,但它似乎比这个项目要求的要复杂一些

我也对使用正则表达式感兴趣,因为我对它的总体经验不多,我认为这将是一个很好的学习机会。

到目前为止我的代码是

 WebClient client = new WebClient();
            string htmlCode = client.DownloadString(p);
            Regex exp = new Regex(@"http://(www\.)?([^\.]+)\.com", RegexOptions.IgnoreCase);
            string[] test = exp.Split(htmlCode);

但我没有得到我想要的结果,因为我仍在研究正则表达式

我正在寻找的 sudo 代码是“

最佳答案

如果您正在寻找一个万无一失的解决方案,正则表达式不是您的答案。由于 HTML 语言的复杂性,它们从根本上受到限制,无法用于可靠地从 HTML 文件中解析出链接或其他相关标签。

相反,您需要使用实际的 HTML DOM API 来解析链接。

关于c# - 用于解析来自 html 代码的链接的正则表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1875258/

相关文章:

javascript - 滚动到元素总是重置 View 直到页面刷新

regex - 如何用 Varnish 添加尾部斜杠?

c# - 我怎样才能在 C# 中获得这个正则表达式?

Java 非捕获正则表达式组提供 "null"捕获

c# - 无法使用 C# 以编程方式访问 iis 远程服务器

javascript - 在 angularjs 中使用 ng-repeat 时扩展 $index 的范围

C# Winforms 透明控件允许点击

javascript - 两个部分的 HTML 不同样式

c# - 报告/监控长流程进度的设计模式

c# - c#中带变量的动态对象