2016-05-10 3 views
1

Как я могу отделить строку по символу и отделить каждую из них запятой?Разделить строку по символу и разделить ее запятой на C#

У меня есть, например, value = '1234';, и я хочу преобразовать его в: value = '1,2,3,4'. Поэтому он все равно должен быть строкой (а не массивом чисел).

Я попытался это:

var result = "1234"; 
var fResult = string.Join(",", result.Split()); 

Но я не имел никакого успеха. Я снова получил result = "1234"; Где я ошибаюсь?

+0

Split используется для сломать разделили строку на подстроки. Строка не разделена. Каковы ваши критерии разделения вашей строки? Это каждый персонаж? – Lithium

+0

С «1234» вам нужна какая-то форма разделителя, которой у вас, очевидно, нет. Сплит возвращает массив. Если вы знаете, что каждый символ будет содержать только один символ, вы можете прокручивать строку результата и принимать по одному символу за раз и строить новую строку = 1,2,3,4 и т. Д. –

ответ

9

Возьмите в массив символов затем присоединиться снова запятая

var result = "1234"; 
var fResult = string.Join(",", result.ToCharArray()); 
3

Join ваша строка string в IEnumerable<char>

string input = "1234"; 
string result = string.Join(",",input.AsEnumerable()); 
+1

Я предпочитаю этот ответ, потому что он не создает дополнительную копию символов в строке. –

+0

Я не могу заставить это работать. Что-то не хватает? 'string' не содержит определения для 'AsEnumerable' –

+2

'using System.Linq;' – fubo

1

это демо для вас:

var result = "1234"; 
var data = result.ToCharArray(); 
var fResult = string.Join(",", data); 
Смежные вопросы