首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >regEx - regExp |标记<a> </a> -与其他标记之间

问regEx - regExp |标记<a> </a> -与其他标记之间
EN

Stack Overflow用户
提问于 2010-12-22 21:02:08
回答 4查看 494关注 0票数 1

我正在搜索匹配2个标签<a和</a>之间的所有内容

我的页面总是一样的,

代码语言:javascript
复制
<a class="applink" href="myLINK" target="..." onClick="..."><img src="..." border="0" alt="..." title="..." align=bottom hspace=3 width="32" height="32"><br>xxxxx</br></a>

想要匹配html代码的所有部分,像这样的代码。

所以<a class="applink" [...] </a> (!例如,使用标签<img --> no ^>*)

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2010-12-22 21:09:35

使用正则表达式进行HTML解析有点棘手,但这在许多情况下都应该有效:

代码语言:javascript
复制
<a\s.*?href\s*=\s*"appLink"[^>]*>(.|\s)*?</a>

这将匹配具有href="appLink“的元素。

您可能希望考虑使用.NET XML解析代码。

票数 1
EN

Stack Overflow用户

发布于 2010-12-22 22:02:12

这里更好的方法是使用HTML解析器。例如,Html Agility Pack

代码语言:javascript
复制
HtmlWeb web = new HtmlWeb();
HtmlDocument doc = web.Load("http://jsbin.com/enico4/"); // this works!
HtmlNodeCollection links = doc.DocumentNode.SelectNodes("//a[@class='appLink']");

如果需要,您还可以获取每个链接的超文本标记语言,但links已经是您需要的集合。

代码语言:javascript
复制
IEnumerable<string> appLinks = links.Select(link => link.InnerHtml);

(这里的代码是C#,但它应该很容易转换为VB.Net)

票数 2
EN

Stack Overflow用户

发布于 2010-12-22 21:10:38

这应该会为您解决这个问题:<a .*?</a>

这不会影响标签,如,,...

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4509437

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档