[英]How can I replace ending of a string using regex?
我有一个字符串"http://www.something.com/test/?pt=12"
我想使用正则表达式将pt=12
替换为pt=13
。
替换后的字符串将是: "http://www.something.com/test/?pt=13"
如何在C#中实现呢?
string result = "";
Regex reg = new Regex("(.*)(pt=12)");
Match regexMatch = reg.Match("http://www.something.com/test/?pt=12");
if(regexMatch.Success){
result = regexMatch.Groups[1].Value + "pt=13"
}
我想您知道pt=
部分。 我还假定参数值是一个数字。
然后,您可以使用以下正则表达式替换:
var newval = 13;
var res = Regex.Replace(str, @"\?pt=[0-9]+", string.Format("?pt={0}", newval));
如果参数不能是查询字符串中的第一个,则替换\\?
与[?&]
。
请注意,您可以使用System.UriBuilder
类。 它具有一个Query
属性,可用于重建查询字符串。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.