試圖找出一種方法來獲取字符串中兩個可預測元素之間的文本(包括)。例子:完整字符串 = [http:Something] One Two Three [http:AnotherOne] Four [http:BlahBlah] sdksaod,cne 9ofew {}@:P{理想結果:字符串 1 = [http:Something] One Two Three字符串 2 = [http:AnotherOne] Four字符串 3 = [http:BlahBlah] sdksaod,cne 9ofew {}@:P{目前我可以得到結果,但它非常混亂,以后可能更難更新。有沒有更好的方法來做到這一點?當前代碼示例:String par = "[http//blah.com] One Two Three [http://wow.com] Four Five [http://another.com] Six";String[] paramUrls = par.Split(' ');List<String> paramPerURL = new List<String>();String temp = "";Boolean found = false;for(int z = 0; z < paramUrls.Length; z++){ if(paramUrls[z].Contains("[http")){ if(found){ paramPerURL.Add(temp); } found = true; temp = paramUrls[z] + " "; } else{ temp += paramUrls[z] + " "; } if(z == paramUrls.Length -1){ paramPerURL.Add(temp); }}
3 回答

收到一只叮咚
TA貢獻1821條經驗 獲得超5個贊
如果我理解正確,您的字符串由以[text]
序列開頭的部分組成。如果是這種情況,并且您確定該[
字符永遠不會作為數據的一部分出現,您可以執行以下操作:
stringParts = Regex.Split(par, @"(?=\[)").Where(s => s != String.Empty).ToArray();
或者您可以使用 just par.Split('[')
,但在這種情況下,初始值[
將從生成的字符串部分中刪除。
- 3 回答
- 0 關注
- 141 瀏覽
添加回答
舉報
0/150
提交
取消