读书人

怎么用.net获取字符串里所有超链接的U

发布时间: 2012-01-03 22:16:06 作者: rapoo

如何用.net获取字符串里所有超链接的URL?

如何用.net获取字符串里所有超链接的URL?

比如下面的代码,如果获得所有的URL链接字符呢?


string= "111 <a href=http://baidu.com/> 百度 </a> 2222222
<a href=http://www.alixixi.com/> 阿里西西网站 </a> 333333 ";

应该用正则式可以实现,但本人对正则了解很少,向各位求助,谢谢。

[解决办法]
具体问题具体分析,不同内容写出的正则表达式是不一样的,就楼主所给实例,可以这样用正则

string yourStr = richTextBox1.Text;
MatchCollection mc = Regex.Matches(yourStr, @ " <a\s+href=(? <url> [^\s> ]*?)> (? <name> [^ <]*?) </a> ", RegexOptions.IgnoreCase);
foreach (Match m in mc)
{
richTextBox2.Text += m.Groups[ "url "].Value + "\n "; //url链接
richTextBox2.Text += m.Groups[ "name "].Value + "\n "; //网站各称
}
[解决办法]
foreach (Match vMatch in
Regex.Matches(s, @ " <a href=([\w\:\/\.]+)[^> ]*> "))
{
textBox1.AppendText(vMatch.Result( "$1 ") + "\r\n ");
}

读书人网 >C#

热点推荐