试图找出一种方法来获取字符串中两个可预测元素之间的文本(包括)。例子:完整字符串 = [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条经验 获得超4个赞
如果我理解正确,您的字符串由以[text]
序列开头的部分组成。如果是这种情况,并且您确定该[
字符永远不会作为数据的一部分出现,您可以执行以下操作:
stringParts = Regex.Split(par, @"(?=\[)").Where(s => s != String.Empty).ToArray();
或者您可以使用 just par.Split('[')
,但在这种情况下,初始值[
将从生成的字符串部分中删除。
- 3 回答
- 0 关注
- 106 浏览
添加回答
举报
0/150
提交
取消