2013-12-17 5 views
-4

У меня есть эта строка:Как получить части строки

string var = "x1,x2,x3,x4"; 

Я хочу, чтобы x1, x2, x3, x4 отдельно в четырех строках.

+0

Чрезмерная обильными результатов Google для" C#, как получить части строки "недостаточно? Пожалуйста, по крайней мере, попробуйте быстрый поиск Google для задавая тривиальные вопросы. –

+0

Пожалуйста, попробуйте исследовать, прежде чем спрашивать здесь. В любом случае, добро пожаловать на этот сайт! – puretppc

ответ

4

Это основной Разделить

string yourString = "x1,x2,x3,x4"; 
string[] parts = yourString.Split(','); 

foreach(string s in parts) 
    Console.WriteLine(s); 

я переименовал исходную переменную в yourString. Хотя кажется, что он принят в LinqPad как действительный идентификатор, я думаю, что он очень запутан с использованием этого имени, потому что зарезервировано

2

Разделить его.

var tokens = someString.Split(','); 

Теперь вы можете получить доступ к ним по индексу:

var firstWord = tokens[0]; 
+1

Да, очень плохая идея, вызывающая переменную var, однако кажется, что она принимается (по крайней мере, в LinqPad) – Steve

+1

Ну, я буду проклят. По-видимому, 'var' считается [контекстуальное ключевое слово] (http://msdn.microsoft.com/en-us/library/x53a06bb.aspx), и из нескольких тестов они кажутся допустимыми как имена переменных как в LINQPad, так и в VS , –

0

Для отдельных значений с запятой между ними, вы можете использовать функцию String.Split().

string[] words = var.Split(','); 
foreach (string word in words) 
{ 
    Console.WriteLine(word); 
} 
1

String.Split

var foo = "x1,x2,x3,x4"; 
var result = foo.Split(','); 

Там же "напротив: String.Join

Console.WriteLine(String.Join('*', result)); 

Выведет: x1*x2*x3*x3

Смежные вопросы