如果我有一個字符串,我知道會是這樣的格式:打破字符串成多個字符串在某個符號
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