2016-05-10 32 views
1

Wie kann ich Zeichenkette für Zeichenkette trennen und jede davon durch ein Komma trennen?Zeichenkette für Zeichenkette trennen und durch Komma trennen in C#

Ich habe zum Beispiel value = '1234'; und ich möchte es zu transformieren: value = '1,2,3,4'. Es sollte also immer noch ein String sein (kein Array von Zahlen).

Ich habe das ausprobiert:

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

Aber ich hatte keinen Erfolg. Ich habe wieder result = "1234"; Wo mache ich einen Fehler?

+0

Split verwendet wird, ein zu brechen Begrenzte Zeichenfolge in Teilstrings. Ihre Zeichenfolge ist nicht begrenzt. Nach welchen Kriterien teilen Sie Ihre Saite auf? Ist es jeder Charakter? – Lithium

+0

Mit '1234' benötigen Sie eine Art Trennzeichen, das Sie natürlich nicht haben. Split gibt ein Array zurück. Wenn Sie wissen, dass jedes Zeichen nur ein Zeichen lang ist, können Sie die Ergebniszeichenfolge durchlaufen und ein Zeichen nach dem anderen nehmen und eine neue Zeichenfolge erstellen = 1,2,3,4 usw. –

Antwort

9

Nehmen String als char-Array dann wieder Join mit Komma

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

Join Ihre string als IEnumerable<char>

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

Ich bevorzuge diese Antwort, weil Es wird keine zusätzliche Kopie der Zeichen in der Zeichenfolge erstellt. –

+0

Ich kann diesen zum Arbeiten nicht bekommen. Fehlt etwas? 'string' enthält keine Definition für 'AsEnumerable' –

+2

'mit System.Linq;' – fubo

1

diese Demo für Sie:

var result = "1234"; 
var data = result.ToCharArray(); 
var fResult = string.Join(",", data); 
Verwandte Themen