要从一些些不规则的地址中截取能用的网址;

C#正则

 

代码
string firsturl = "http://www.herosoft.com,http://www.heropc.com.cn/"
//建立正则匹配 
string zhengze = @"([\w*]+\.){2,}([\w*]+)";
Match m 
= Regex.Match(firsturl, zhengze);  
firsturl
= "http://" +m.Value; 

 

不设置HTTP是因为有些网址往数据库里存的时候本来就没加上HTPP;

所以正则一概不加HTTP,代码手动加吧

 

解析一下正则

([\w*]+\.){2,}([\w*]+)

\w是字符,

*号表示出现次数不限,0次,无限次都可以

+表示至少出现1次,无上限

\.匹配一个  “.”

{2,}表示本表达式至少重复两次

后面的类似,但是不加上 “.”

截取出来的结果为:www.herosoft.com

再加上 HTTP://

收工

 

  取图片

<img\b[^<>]*?\bsrc[\s\t\r\n]*=[\s\t\r\n]*[""']?[\s\t\r\n]*(?<imgUrl>[^\s\t\r\n""'<>]*)[^<>]*?/?[\s\t\r\n]*>

 

 

取页面所有A标签

 

<a[^>]*?href=[^>]*?>

 

 

 

posted on 2010-04-28 15:53  wsenmin  阅读(1373)  评论(4编辑  收藏  举报