Ich habe diese Zeichenfolge: "123-456-7"Wie Vorkommen von "-" durch eine leere Zeichenfolge ersetzen?
Ich brauche diese Zeichenfolge zu erhalten: "1234567"
Wie ich Vorkommen ersetzen kann "-" mit einem leeren String?
Ich habe diese Zeichenfolge: "123-456-7"Wie Vorkommen von "-" durch eine leere Zeichenfolge ersetzen?
Ich brauche diese Zeichenfolge zu erhalten: "1234567"
Wie ich Vorkommen ersetzen kann "-" mit einem leeren String?
string r = "123-456-7";
r = r.Replace("-", "");
Beat mich von 17,3745853 Sekunden +1 –
Eigentlich 36 Sekunden, von wo ich stehe. ;) –
So einfach ??????????????????? – Gold
Dies sollte den Trick:
String st = "123-456-7".Replace("-","");
Alles in einer Zeile. Cool +1 – ichiban
Um klar zu sein, möchten Sie sich Bindestrich ersetzen (-) mit leeren/nichts. Wenn Sie es durch die Rücktaste ersetzt haben, löschte es das Zeichen davor!
Das führen würde: 123-456-7 ==> 12457
Sean Hell hat die richtige Antwort.
String.Replace Method (String, String)
in Ihrem Fall wäre es
seinstring str = "123-456-7";
string tempstr = str.Replace("-","");
string r = "123-456-7".Replace("-", String.Empty);
Für .Net 1.0 String.Empty nicht nehmen zusätzlichen Platz auf dem Heap, sondern "" erfordert Speicher auf dem Heap und seine Adresse auf dem Stapel, was zu mehr Assemblercode führt. Daher ist String.Empty schneller als "".
Auch String.Empty bedeutet keine Tippfehler.
Überprüfen Sie die What is the difference between String.Empty and “” Verbindung.
Ich glaube nicht, dass das wahr ist. String.Empty ist die Konstante für "". Der Compiler verweist alle "" Literale auf String.Empty. Es spielt keine Rolle, wie viele Literale Sie haben. – AMissico
Danke AMissico ... Ich habe gerade den Heap für 3.5 Framework überprüft und Sie haben recht, sowohl "" als auch String.Empty zeigen auf den gleichen Speicherort. Für 1.0 wird jedoch Platz auf dem Heap für "" reserviert. Ich habe die Antwort entsprechend bearbeitet :) –
Irgendwelche der oben genannten Methoden, die ich denke, ist in Ordnung, während, wenn Sie in etwas komplexer Operation sind, denken Sie besser an Regex, es ist wirklich großartig.
Verwenden Sie String.Empty oder null anstelle von "" since "" erstellt ein Objekt im Speicher für jedes Vorkommen, während andere das gleiche Objekt wiederverwenden.
Wats so speziell über diese Frage für sie abgestimmt werden? – Shoban
Bürgerpflicht, vielleicht;) –