请朋友帮我写一个正则表达式。

lang_csdn 2009-08-14 03:13:21
如何替换 <a href="http://www.d.com"

title="http://www.d.com" target="_blank">http://www.d.com</a>

如何把 href title 中的链接替换为 http://www.c.com 链接标题,保留啊?

正确的结果:
<a href="http://www.c.com"

title="http://www.c.com" target="_blank">http://www.d.com</a>

谢谢。
...全文
96 16 打赏 收藏 转发到动态 举报
写回复
用AI写文章
16 条回复
切换为时间正序
请发表友善的回复…
发表回复
rainsome 2009-08-18
  • 打赏
  • 举报
回复

//Try it.
string str = @"<a href=""http://www.d.com""
title=""http://www.d.com"" target=""_blank"">http://www.d.com </a><a href=""http://www.g.com""
title=""http://www.g.com"" target=""_blank"">http://www.g.com </a> ";

String str1 = @"http://www.c.com";

Regex objRegex = new Regex(@"(?im)(?<=\<a[^>]+?(?:href|title)=(""|'))[^>]+?(?=\1)");

String strRt = objRegex.Replace(str, str1);

Response.Write(String.Format("Result : {0}<br />", HttpUtility.HtmlEncode(strRt)));
/*
Result : <a href="http://www.c.com" title="http://www.c.com" target="_blank">http://www.d.com </a><a href="http://www.c.com" title="http://www.c.com" target="_blank">http://www.g.com </a>

*/

kldx5092 2009-08-17
  • 打赏
  • 举报
回复
string str = "<a href=\"http://www.d.h.com\" title=\"http://www.d.com\" target=\"_blank\">http://www.d.com </a>";
string repStr = "www.c.com";

string res = Regex.Replace(str, "(?<=\")[^\"]*(?=\"\\s)", repStr);
kldx5092 2009-08-17
  • 打赏
  • 举报
回复
string str = "<a href=\"http://www.d.com\" title=\"http://www.d.com\" target=\"_blank\">http://www.d.com </a>";
string repStr = "c";

string res = Regex.Replace(str, "(?<=[^\"]\"http://www.)[^.com]*", repStr);
kldx5092 2009-08-17
  • 打赏
  • 举报
回复
string str = "<a href=\"http://www.d.com\" title=\"http://www.d.com\" target=\"_blank\">http://www.d.com </a>";
string repStr = "http://www.c.com";

string res = Regex.Replace(str, "(?<=[^\"]\")http://www.d.com(?=\")", repStr);

xzq686 2009-08-17
  • 打赏
  • 举报
回复

string test = "<a href=\"http://www.d.com\" title=\"http://www.d.com\" target=\"_blank\">http://www.d.com </a>";
Regex reg = new Regex(@"(?<=[\s""]*)http://www.[a-z]+.[a-z]+(?=[\s""]*)");
test = reg.Replace(test, "http://www.c.com");
Response.Write(test);
Response.End();
mingnuo 2009-08-17
  • 打赏
  • 举报
回复
string s=" <a href=\"http://www.d.com\" title=\"http://www.d.com\" target=\"_blank\">http://www.d.com </a>";
Regexp reg=new Regexp(">( | )*http://www\.[a-zA-Z0-9-]+?\.com( | )* <");
string S=reg.Replace(s,">http://www.c.com<");
mingnuo 2009-08-17
  • 打赏
  • 举报
回复
string s=" <a href=\"http://www.d.com\" title=\"http://www.d.com\" target=\"_blank\">http://www.d.com </a>";
Regexp reg=new Regexp(">( | )*http://www\.[a-zA-Z0-9-]+?\.com( | )*<");
string S=reg.Replace(s,"http://www.c.com");

[Quote=引用 5 楼 lang_csdn 的回复:]
楼上的,分界不一定是  "

只有http:// 这个是固定的。
[/Quote]
qq904492758 2009-08-14
  • 打赏
  • 举报
回复
(?<=\=\")\w.+(?=\"\s) 正则
zhengqian529 2009-08-14
  • 打赏
  • 举报
回复
a为原始字符串,input string
zhengqian529 2009-08-14
  • 打赏
  • 举报
回复
Regex.Replace(a, @"(?<=(href=\"))[^ ]+(?=\")|(?<=(title=\"))[^ ]+(?=\")", "http://www.c.com");
zhouyanfss 2009-08-14
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 zhouyanfss 的回复:]
([href="]\w*["])|([title="]\w*["])|([>]\w*[ </a>])
这是把三种一起取出的正则,如果要替换
要分别替换,下面举一个 例子
C# code
tmpStr=@"title="http://www.c.com" target="_blank">http://www.d.com </a> "; Regex rgx=new Regex(@"[>]\w*[</a>]");
tmpStr= rgx.Replace(tmpStr,">http://www.c.com</a>")
[/Quote]
lang_csdn 2009-08-14
  • 打赏
  • 举报
回复
楼上的,分界不一定是 "

只有http:// 这个是固定的。
mingnuo 2009-08-14
  • 打赏
  • 举报
回复
string s=" <a href=\"http://www.d.com\" title=\"http://www.d.com\" target=\"_blank\">http://www.d.com </a>";
Regexp reg=new Regexp("\"http://www\.[a-zA-Z]\.com\"");
string S=reg.Replace(s,"http://www.c.com");

不好意思没看清楚
zhouyanfss 2009-08-14
  • 打赏
  • 举报
回复
([href="]\w*["])|([title="]\w*["])|([>]\w*[</a>])
这是把三种一起取出的正则,如果要替换
要分别替换,下面举一个 例子

tmpStr = "title="http://www.c.com" target="_blank">http://www.d.com </a> ";
Regex rgx = new Regex(@"[>]\w*[</a>]");
tmpStr = rgx.Replace(tmpStr, ">http://www.c.com</a>")
mingnuo 2009-08-14
  • 打赏
  • 举报
回复
string s="<a href=\"http://www.d.com\" title=\"http://www.d.com\" target=\"_blank\">http://www.d.com </a>";
Regexp reg=new Regexp("http://www\.[a-zA-Z]\.com");
string S=reg.Replace(s,"http://www.c.com");
pt1314917 2009-08-14
  • 打赏
  • 举报
回复
"([^"]*)"

110,534

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

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