日期:2014-05-17  浏览次数:20425 次

帮忙看看字符串处理的问题
背景:
  1.有域名aa.com,域名bb.com;
  2.另有一段文本内容,其中可能有包含"aa.com"或者"bb.com"(也可能是二级域名)的链接或者地址。

  需求:
  如果文本中包含aa.com,bb.com的字符串是链接,则不处理;如果不是链接,将此url加上新页面打开的链接。

  例子:
  文本1为:请登录www.a.aa.com/xxx.htm ,将www.a.aa.com/xxx.htm 加上链接。则处理为<a href='www.aa.com/xxx.htm' target='_blank'>www.a.aa.com/xxx.htm</a>
  文本2为:请登录<a href='http://www.a.aa.com/xxx.htm'>xxx</a> 则跳过不处理

------解决方案--------------------
yourhtml=Regex.Replace(yourhtml,@"(?i)(?<!<a\s+href=(['""])?.*?)(?:https?://)?www\.a\.(?:aa|bb)\.com[^'""\s]+","<a href='$0' target='_blank'>$0</a>");
"