0

我有一个字符串:

id0:xxxxx:id0-value:xxxxx:id1:xxxxxxxx:id1-value:xxxxx:id3:xxxxxxxx:id3-value:xxx

我只需要从字符串到数组中的 idX-value 的值。

我怎样才能实现它?

4

3 回答 3

2

使用 String.Split()

http://msdn.microsoft.com/en-us/library/system.string.split.aspx

String myString = "id0:xxxxx:id0-value:xxxxx:id1:xxxxxxxx:id1-value:xxxxx:id3:xxxxxxxx:id3-value:xxx";
String[] tokens = myString.Split(new Char[] {':'});

令牌数组将包含 {"id0","xxxxx","id0-value","xxxxx","id1","xxxxxxxx","id1-value","xxxxx","id3","xxxxxxxx", "d3 值","xxx"}

第二种可能性是使用 String.IndexOf() 和 String.Substring()。

http://msdn.microsoft.com/en-us/library/5xkyx09y http://msdn.microsoft.com/en-us/library/aka44szs

诠释开始 = 0; ArrayList 令牌;while((start = myString.IndexOf("-value:", start)) > -1) { ArrayList.Add(myString.Substring(start+6, myString.IndexOf(":", start+7); start + = 6; // 跳过我们刚刚找到的内容。}

于 2012-08-16T03:34:11.977 回答
2

简单的方法,值在位置 (4x - 1):

var list = input.Split(':');
var outputs = new List<string>();

for (int index = 0; index < list.Count(); index++)
{
     if (index % 4 == 3)
         outputs.Add(list.ElementAt(index));
}
于 2012-08-16T04:16:47.917 回答
1

使用 Regex 拆分它(一个拆分 : 在 x 之后的正则表达式),然后使用冒号拆分:并使用第一个索引作为字典键和第二个索引作为字典值。

于 2012-08-16T03:29:15.550 回答