Laden...

String ersetze die ersten 2 Vorkommen von Space zu Semikolon

Erstellt von wotuzu17 vor 13 Jahren Letzter Beitrag vor 13 Jahren 1.734 Views
W
wotuzu17 Themenstarter:in
7 Beiträge seit 2011
vor 13 Jahren
String ersetze die ersten 2 Vorkommen von Space zu Semikolon

Hallo,

ich möchte eine Textliste als csv exportieren.
Dazu müssen die ersten beiden Spaces zu ";" ersetzt werden. Trotz Studium der String Funktionen finde ich keinen Zugang wie ich sowas einfach machen kann.

Ich kann zwar das erste Vorkommen von space mit


int pos=Line.Indexof(" ");

herausfinden,
aber nicht mit


Line[pos]=";";

ändern.

Bei php geht das ganz einfach. 🙁

B
196 Beiträge seit 2007
vor 13 Jahren

Nur die ersten beiden? (ansonsten wäre Replace einfacher)
Du kannst mit dem Index ja andere Stringfunktionen füttern z.B. Remove (" " raus), Insert (";" rein) , Substring(zum selber zusammenbauen) usw.

your fragile folded wings
are just tired from the pure blue sky
you dont have to force your smiles for anyone
its okay to smile...for yourself

1.552 Beiträge seit 2010
vor 13 Jahren

Hallo wotuzu17,

Bei php geht das ganz einfach.

php ist auch nicht C#.
Warum dies nicht geht siehst du in: [FAQ] Besonderheiten der String-Klasse (immutabler Referenztyp mit Wertsemantik)
Am einfachsten ist das Problem mit einem Regex gelöst. Dabei schreibst du folgendes:


String s = "My String with more than one white space";
Regex r = new Regex(" ");
s = r.Replace(s,";",2);

Wobei der erste Parameter der zu übergebende String ist, der Zweite das was beim Treffer mit dem oben genannten Regex ausgetauscht werden soll und der Dritte wie oft dies gemacht werden soll. Es soll also nur die ersten zwei Leerzeichen ausgetauscht werden. Ergebnis des obengenannten Codes ist : "My;String;with more than one white space"

Gruß
Michael

Mein Blog
Meine WPF-Druckbibliothek: auf Wordpress, myCSharp