一个简单的正则表达式问题,有点小BUG,100分求解

Outdll 2004-04-15 05:26:10

我想把<img src="xxx.gif">
换成 <a href="xxx.gif" target=_blank><img src="xxx.gif" border=0></a>
用下面的代码总是多了了不要的字符

string content = "<img src=\"xxx.gif\">";
Regex regex = new Regex(@"<img src=([^>]*[^/]).(?:jpg|bmp|gif)",RegexOptions.IgnoreCase);
content = regex.Replace(content,@"<a href=""$1"" target=_blank><img src=""$1"" border=0></a>");
this.Response.Write(content);

谁帮我看看,吃完饭马上结帖
...全文
31 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
Outdll 2004-04-27
  • 打赏
  • 举报
回复
楼上的还是有错,还有没有更多的解决方法?
Outdll 2004-04-16
  • 打赏
  • 举报
回复
C# 支持两种形式的字符串:规则字符串和逐字字符串。

规则字符串由包含在双引号中的零个或多个字符组成(如 "hello"),并且可以包含简单转义序列(如表示制表符的 \t)、十六进制转义序列和 Unicode 转义序列。

逐字字符串由 @ 字符后跟开始的双引号字符、零个或多个字符以及结束的双引号字符组成。一个简单的示例就是 @"hello"。在逐字字符串中,分隔符之间的字符逐字解释,唯一的例外是“引号转义序列”。具体说来,在逐字字符串中不处理简单转义序列以及十六进制和 Unicode 转义序列。逐字字符串可以跨多行。

jintaogentle 2004-04-15
  • 打赏
  • 举报
回复
我用VB的,我想问一下@加在里面是什么意思
yikais 2004-04-15
  • 打赏
  • 举报
回复
UP
暗石绿 2004-04-15
  • 打赏
  • 举报
回复
string content = "<img src=\"xxx.gif\">";
Regex regex = new Regex("<img src=\"([^>]*[^/]).(jpg|bmp|gif).*>",RegexOptions.IgnoreCase);
content = regex.Replace(content,"<a href=\"$1\" target=_blank><img src=\"$1\" border=0></a>");
xuzuning 2004-04-15
  • 打赏
  • 举报
回复
string content = "<img src=\"xxx.gif\">";
Regex regex = new Regex(@"<img src=(.+(?:jpg|bmp|gif)[^>]).*",RegexOptions.IgnoreCase);
content = regex.Replace(content,@"<a href=$1 target=_blank><img src=$1 border=0></a>");
this.Response.Write(content);

输出
<a href="xxx.gif" target=_blank><img src="xxx.gif" border=0></a>
Outdll 2004-04-15
  • 打赏
  • 举报
回复
输出的结果是
<a href=""xxx" target=_blank><img src=""xxx" border=0></a>">

62,067

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

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