求c#替换字符串

kart15 2011-03-29 11:41:13
如有一个URL
string url=" http://www.znpx.net/Default.aspx?ID=1&year=2000&type=3";
或者
string url ="http://www.znpx.net/Default.aspx?ID=1&year=2000";

想把上面的字符串中的&year=2000替换为&year=2001
意思是要替换掉2000,
不能写成url.Replace("2000","2001");
这样没意思

有没有什么正则能替换"&year="之后"&"之前的字符?或者是"&year="之后"&"的?

...全文
709 18 打赏 收藏 转发到动态 举报
写回复
用AI写文章
18 条回复
切换为时间正序
请发表友善的回复…
发表回复
tcqlw 2011-04-24
  • 打赏
  • 举报
回复
url = url.Replace("&year=2000","&year=2001");
Replace传递的值要再赋值的……
纯唇Yu弄 2011-03-29
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 huangwenquan123 的回复:]

C# code
string str = "\"http://www.znpx.net/Default.aspx?ID=1&year=2000&type=3\"";
string str1 = "http://www.znpx.net/Default.aspx?ID=1&year=2000";
st……
[/Quote]

li358871791 2011-03-29
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 huangwenquan123 的回复:]
C# code
string str = "\"http://www.znpx.net/Default.aspx?ID=1&year=2000&type=3\"";
string str1 = "http://www.znpx.net/Default.aspx?ID=1&year=2000";
s……
[/Quote]
试试
yijianxiangde100 2011-03-29
  • 打赏
  • 举报
回复
//File TestYear.cs
//

using System;
using System.Text.RegularExpressions;

class Sample
{
public static void Main()
{
//替换"&year="之后"&"之前的字符 的正则表达式
string pattern="&year=.*&";
Regex rgx=new Regex(pattern);
//输入的字符串
string inputStr=@"string url=' http://www.znpx.net/Default.aspx?ID=1&year=2000&type=3;";
//要替换的字符串
string replaceStr="&year=2001&";
string outputStr=rgx.Replace(inputStr,replaceStr);

Console.WriteLine(outputStr);
Console.Read();
}
}
huangwenquan123 2011-03-29
  • 打赏
  • 举报
回复

/*
结果:
"http://www.znpx.net/Default.aspxID=1&year=2011&type=3"
http://www.znpx.net/Default.aspx?ID=1&year=2011
*/
huangwenquan123 2011-03-29
  • 打赏
  • 举报
回复
            string str = "\"http://www.znpx.net/Default.aspx?ID=1&year=2000&type=3\"";
string str1 = "http://www.znpx.net/Default.aspx?ID=1&year=2000";
string result = Regex.Replace(str, @"(?is)(?<=&year=)[^&]*", "2011");
string result1 = Regex.Replace(str1, @"(?is)(?<=&year=)[^&]*", "2011");
Response.Write(result);
Response.Write("<br/>");
Response.Write(result1);
子夜__ 2011-03-29
  • 打赏
  • 举报
回复
2000
换成绑定的不就行了。

<%=urlpara %>

后台
public static string urlpara=string.Empty;

赋值
liukaizxc 2011-03-29
  • 打赏
  • 举报
回复
去找找看url重写技术 应该有帮助的
HelloJimmy520 2011-03-29
  • 打赏
  • 举报
回复
没意思是什么意思?
如果你的参数值是加密的,你可以找到(&)参数再对参数值进行替换!
kart15 2011-03-29
  • 打赏
  • 举报
回复
求救!跪求各位大虾
huangwenquan123 2011-03-29
  • 打赏
  • 举报
回复

string str = "\"http://www.znpx.net/Default.aspx?ID=1&year=2000&type=3\"";
string str1 = "http://www.znpx.net/Default.aspx?ID=1&year=2000";
string str2 = "http://www.znpx.net/Default.aspx?year=2000";
string result = Regex.Replace(str, @"(?is)(?<=[&?]year=)[^&]*", "2011");
string result1 = Regex.Replace(str1, @"(?is)(?<=[&?]year=)[^&]*", "2011");
string result2 = Regex.Replace(str2, @"(?is)(?<=[&?]year=)[^&]*", "2011");
Response.Write(result);
Response.Write("<br/>");
Response.Write(result1);
Response.Write("<br/>");
Response.Write(result2);
/*
结果
"http://www.znpx.net/Default.aspx?ID=1&year=2011&type=3"
http://www.znpx.net/Default.aspx?ID=1&year=2011
http://www.znpx.net/Default.aspx?year=2011
*/
kart15 2011-03-29
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 huangwenquan123 的回复:]
C# code
string str = "\"http://www.znpx.net/Default.aspx?ID=1&year=2000&type=3\"";
string str1 = "http://www.znpx.net/Default.aspx?ID=1&year=2000";
s……
[/Quote]

如果URL还有种可能呢?
如:string str1 = "http://www.znpx.net/Default.aspx?year=2000&ID=1";
怎么把这个加进正则啊?

之前给的那个OK,现在是可能会出现?year=不一定是&year=
peng2739956 2011-03-29
  • 打赏
  • 举报
回复
正则只能匹配不能替换的,这点必须得清楚 你如果想替换的话 直接写个方法带个参然后得到url要替换的值把带的参replace替换掉。
浮尘1213 2011-03-29
  • 打赏
  • 举报
回复
用正则表达式更好,当然如果你对这些很了解的话
浮尘1213 2011-03-29
  • 打赏
  • 举报
回复
这个很简单,用JAVASCRIPT脚本就很好,

function a(){
var str="张三喜欢李四";
str=str.replace(/张三/,"王五");
alert(str);

}
haa17 2011-03-29
  • 打赏
  • 举报
回复

Regex re=new Regex("&year=[\d]{0,4}");

62,041

社区成员

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

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

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

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