CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
不看会后悔的Windows XP之经验谈 简单快捷DIY实用家庭影院
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  .NET技术 >  ASP.NET

100分求用正则表达式把以http://开头的文本替换为超链接。

楼主zjliujun(刘军)2006-03-31 17:40:06 在 .NET技术 / ASP.NET 提问

论坛中如果有人发的帖子中有如下的文本:http://www.bizsofts.com   ,我想把这段文本替换为:<a   href="http://www.bizsofts.com"   target="_blank">http://www.bizsofts.com</a>,也就是给文本加上超链接,一点击就可以打开链接,而不用把文本拷贝到IE的地址栏再打开,应该怎么做?  
   
  就好像在Outlook中把http://开头的文本自动加上下划线一样,可以点击直接链接到相应的地址。  
   
  问题点数:100、回复次数:8Top

1 楼zjliujun(刘军)回复于 2006-03-31 17:42:26 得分 0

如何判断链接的下划线到那里结束也是一个问题。Top

2 楼hyj_828(水梦)回复于 2006-03-31 17:45:30 得分 0

(http://.+   $)Top

3 楼liuxiaoyi666(MSMVP 小猪妹荣誉马甲之八卦兔子)回复于 2006-03-31 17:47:42 得分 0

匹配网址URL的正则表达式:[a-zA-z]+://[^\s]*Top

4 楼zjliujun(刘军)回复于 2006-03-31 17:48:07 得分 0

请给出全部的C#代码。Top

5 楼zjliujun(刘军)回复于 2006-03-31 17:52:21 得分 0

我是在一个函数中写的,但实现不了,是哪里错了:  
   
  public   string   ProcessLink(object   Content)  
  {  
          string   strContent   =   Content.ToString();  
          Regex   my=   new   Regex(@"(\[URL\])(http:\/\/.[^\[]*)(\[\/URL\])",RegexOptions.IgnoreCase);  
          strContent=my.Replace(strContent,@"<A   HREF=""$2""   TARGET=_blank>$2</A>");  
   
          string   newContent   =   strContent;  
          return   newContent;  
  }Top

6 楼fancyf(凡瑞)回复于 2006-03-31 17:58:13 得分 100

Regex   regex   =   new   Regex(  
  @"(http:\/\/([\w.]+\/?)\S*)",  
  RegexOptions.IgnoreCase  
  |   RegexOptions.CultureInvariant  
  |   RegexOptions.IgnorePatternWhitespace  
  |   RegexOptions.Compiled  
  );  
  string   content   =   "http://www.bizsofts.com   http://www.bizsofts1.com   http://www.bizsofts2.com/abc";  
  content   =   regex.Replace(content,   "<a   href=\"$1\"   target=\"_blank\">$1</a>");  
  Console.WriteLine(content);  
   
  输出结果:  
  <a   href="http://www.bizsofts.com"   target="_blank">http://www.bizsofts.com</a>   <a  
    href="http://www.bizsofts1.com"   target="_blank">http://www.bizsofts1.com</a>   <a  
    href="http://www.bizsofts2.com/abc"   target="_blank">http://www.bizsofts2.com/ab  
  c</a>Top

7 楼zjliujun(刘军)回复于 2006-03-31 18:01:28 得分 0

马上测试一下Top

8 楼zjliujun(刘军)回复于 2006-03-31 18:16:21 得分 0

fancyf(凡瑞)   是正解,真是高手,100全给你。Top

相关问题

  • 求一替换正则表达式 ————————文本字符串替换 (全字匹配)
  • 正则表达式怎么替换掉所有的超连接,只留下超连接的文本。
  • 正则表达式替换的问题
  • 正则表达式多行替换
  • 正则表达式替换问题
  • 正则表达式的替换问题
  • 急:正则表达式替换
  • 请教一个正则表达式的字符替换问题:
  • dw mx查找替换中正则表达式的问题
  • 用正则表达式怎样把[……]替换为<……>?

关键词

  • 文本
  • bizsofts
  • regexoptions
  • strcontent
  • regex
  • 链接
  • content
  • url
  • www

得分解答快速导航

  • 帖主:zjliujun
  • fancyf

相关链接

  • CSDN .NET频道
  • .NET类图书
  • C#类图书
  • .NET类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo