[英]How to remove a part of string effectively
有一個像A = B&C = D&E = F的字符串,如何刪除C = D部分並得到像A = B&E = F的字符串?
要么只是將其替換掉:
input.Replace("&C=D", "");
或者使用上一個問題中的一個解決方案,將其從數據結構中刪除並重新連接在一起。
使用我的代碼:
var input = "A=B&C=D&E=F";
var output = input
.Split(new string[] {"&"}, StringSplitOptions.RemoveEmptyEntries)
.Select(s => s.Split('=', 2))
.ToDictionary(d => d[0], d => d[1]);
output.Remove("C");
output.Select(kvp => kvp.Key + "=" + kvp.Value)
.Aggregate("", (s, t) => s + t + "&").TrimRight("&");
using System.Web; // for HttpUtility
NameValueCollection values = HttpUtility.ParseQueryString("A=B&C=D&E=F");
values.Remove("C");
values.ToString(); // "A=B&E=F"
我認為你需要給出一個更清晰的例子,以確保它適合這種情況,但是這樣的事情應該這樣做:
var testString = "A=B&C=D&E=F"
var stringArray = testString.Split('&');
stringArray.Remove("C=D");
var output = String.Join("&", stringArray);
這樣的東西應該有效,而且應該非常有活力
你可以split()和手動連接(取決於數據的樣子)或者simly使用string.Replace(,string.empty)
將它拆分在&
分隔符上,通過某種機制排除C=D
部分,然后加入剩下的兩個? String
類提供了您需要的方法,包括拆分,連接和子串匹配。
string xyz = "A=B&C=D&E=F";
string output = xyz.Replace("&C=D","");
輸出:A = B&E = F.
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.