我有這個網址http://spdata.com?value=1&rem=288&data=1 ..我想用rem = 288(這288不是靜態的)與一些其他的值,如membership = 1。值得告訴我怎麼做這個。 正在考慮做一個子串,然後合併,但不知道是否有一個已經很簡單的過程來做到這一點。用另一個值替換查詢字符串的一部分
感謝
我有這個網址http://spdata.com?value=1&rem=288&data=1 ..我想用rem = 288(這288不是靜態的)與一些其他的值,如membership = 1。值得告訴我怎麼做這個。 正在考慮做一個子串,然後合併,但不知道是否有一個已經很簡單的過程來做到這一點。用另一個值替換查詢字符串的一部分
感謝
你可以用正則表達式來做到這一點。
事情是這樣的:
using System.Text.RegularExpressions;
string newUrl= Regex.Replace("http://spdata.com?value=1&rem=288&data=1", @"rem=\d*", "membership=1",RegexOptions.IgnoreCase);
非常好,精確。 – user505210
@Agustin非常好的答案兄弟它值得接受的答案和投票:) –
這應該you.According到您的URL模式工作,這將改變所有"rem=x"
與另一value.In這種情況下"membership=1"
着,當然你可以把它的動態了。
var url = "http://spdata.com?value=1&rem=288&data=1";
var parts = url.Split('&').Select(x =>
{
if (x.Contains("rem=")) return "membership=1";
return x;
});
var result = string.Join("&", parts);
如果你想要方便,快捷性和可讀性,那麼爲什麼不只是在連接字符串一起?或使用string.Format
string key="rem";
string value="288";
string.Format("http://spdata.com?value=1&{0}={1}&data=1", key, value)
嘗試使用此
string text = "membership=1";
string x = "http://spdata.com?value=1&rem=288&data=1 ";
int y = x.IndexOf("rem=");
string z = x.Substring(y, x.Length - y);
int a = z.IndexOf("&");
string url = x.Substring(0, y) + text + z.Substring(a, z.Length - a);
工程太棒了..謝謝 – user505210
Uri uri = new Uri("http://spdata.com?value=1&rem=288&data=1...")
var pairs = HttpUtility.ParseQueryString(uri.Query)
pairs.Remove("rem");
pairs.Add("membership", "1");
var builder = new UriBuilder(uri);
builder.Query = pairs.ToString();
Uri modified = builder.Uri;
你動態地構建網址是什麼?或者你是否有大量的文本,並且需要替換其中的許多網址? –