关于html 分析问题

zhpmy1 2009-07-17 03:28:12
问题是这样的,我做了个网页爬虫,获得了指定的html代码,想获取其中某个文本的链接地址,如下

<html><body><a href='我要获取此链接' >文本内容</a></body></html>

文本内容 是固定的,也许是一个固定的图片链接,就是想得到其超链接的地址,用正则表达式只能获取所有的超链接地址,却不能获取我指定内容的超链接地址,希望知道的朋友不吝赐教,在此谢谢各位了。
...全文
23 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
zhpmy1 2009-07-17
  • 打赏
  • 举报
回复
谢谢这位朋友,非常感谢,问题解决
opcdde 2009-07-17
  • 打赏
  • 举报
回复
正则表达式获得文本内容的位置,然后取得其前面的链接
即用零宽断言,然后匹配href


或者正则表达式获得如下整个部分
<a href='我要获取此链接' >文本内容 </a>

然后根据文本内容判断
zgke 2009-07-17
  • 打赏
  • 举报
回复
string _Value = "<html> <body> <a href='我要获取此链接' >文本内容 </a> </body> </html> ";


Regex _Regex = new Regex(@"(?<=<a href=')[^']+");

MessageBox.Show(_Regex.Match(_Value).Value);

这样?
十八道胡同 2009-07-17
  • 打赏
  • 举报
回复
try...
 static void Main(string[] args)
{
Regex r = new Regex(@"<a\s*href='([^']+)\s*[^>]*>");
string str = @"<html> <body> <a href='我要获取此链接' >文本内容 </a> </body> </html>";
Match m;
for (m = r.Match(str); m.Success; m = m.NextMatch())
{
Console.WriteLine(m.Groups[1].ToString());
}
}

110,533

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧