如果我有一个字符串,我知道会是这样的格式:打破字符串成多个字符串在某个符号
string teststring = "test1;#test2;#test3;#";
,我想会自动把它变成:
string string1 = "test1";
string string2 = "test2";
string string3 = "test3";
什么是设置这个最好的方法?
如果我有一个字符串,我知道会是这样的格式:打破字符串成多个字符串在某个符号
string teststring = "test1;#test2;#test3;#";
,我想会自动把它变成:
string string1 = "test1";
string string2 = "test2";
string string3 = "test3";
什么是设置这个最好的方法?
使用String.Split
。
string[] parts = teststring.Split(
new string[] { ";#" },
StringSplitOptions.RemoveEmptyEntries);
使用字符串分割:
sting[] myStrings = teststring.Split(new string[] {";#"}, , StringSplitOptions.RemoveEmptyEntries);
foreach(string piece in myStrings)
{
//Do whatever you want.
}
如果我不知道弦会持续多久会怎样?它可能只是一个部分或许多部分。 – proseidon 2013-03-07 16:49:35
看看我的更新,如果你想对每一个字符串做一些事情。 – 2013-03-07 16:51:04
分割字符串到一个数组:
string[] = teststring.Split("#");
我认为你的意思是'teststring.Split(“;#”);' – 2013-03-07 16:51:14
拆分串入基于所述阵列 ';#' 字符。从MSDN
string[] parts = teststring.Split(";#")
parts[0]; // string1.
parts[1]; // string2.
parts[2]; // string3.
var strings = teststring.Split(new String[]){";#"}, StringSplitOptions.RemoveEmptyEntries);
涂改代码中发现的:http://msdn.microsoft.com/en-us/library/b873y76a.aspx
using System;
public class SplitTest {
public static void Main() {
string teststring = "test1;#test2;#test3;#";
string [] split = teststring.Split(new Char []{';','#'},StringSplitOptions.RemoveEmptyEntries);
var SplitStringList = new Dictionary<String, String>();
for (int i=0;i<split.Length;i++)
{
if (split[i].Trim() != "")
{
SplitStringList.Add("string"+1, split[i]);
}
}
}
}
现在你可以用这种方式给定的字符串键的字符串值:
String Anything = SplitStringList["string1"];
该示例将以下字符串添加到Dictionary SplitStringList: 注:string1值:test1 键:字符串2值:TEST2
重点:STRING3值:TEST3
随着配对键,这样就可以更深入整个代码的其余部分,然后使用这些字符串。只需参考关键。
你不需要'if(split [i] .Trim()!=“”)'因为你'使用'StringSplitOptions.RemoveEmptyEntries'另外,您的'SplitStringList'可以通过在构造器中传递字符串数组来保存更多行代码。 – 2013-03-07 17:12:56
只是想向他展示他可以使用最终数组的其他方法。 – user2140261 2013-03-07 17:26:13
你看过[Split()方法](http://msdn.microsoft.com/en-us/library/b873y76a.aspx)吗? – Brian 2013-03-07 16:48:30