7

Ich habe eine Windows Phone-Anwendung. In der Anwendung habe ich ein Textfeld, dessen Eigenschaft accreditreturn auf true gesetzt ist.NewLine Ersatz C#?

Was ich tun möchte, ist eine Zeichenfolge aus der Textbox erstellen und die neuen Linien mit einem bestimmten Zeichen ersetzen, so etwas wie "NL"

Ich habe versucht, die folgenden aber keiner von ihnen arbeitete.

string myString = myTextBox.Text.Replace(Environment.NewLine,"NL"); 
string myString = myTextBox.Text.Replace("\n","NL"); 
+1

Sind Sie sicher, dass es das Newline-Zeichen sind Sie nach, und nicht 'Wagen return' - \ r? Ist 'string myString = myTextBox.Text.Replace (" \ r "," NL ");' Arbeit? Environment.NewLine ist normalerweise '\ r \ n' unter Windows, also haben Sie \ n und \ r \ n versucht! – dash

+0

Warum hat es nicht funktioniert? Gab es eine Ausnahme? Oder wurde die Ausgabe nicht wie gewünscht formatiert? – psubsee2003

+0

Nun, es hat keine Ausnahme verursacht, es hat einfach nicht funktioniert. newline wurde nicht ersetzt – user1924391

Antwort

3

Betrachten wir verschiedene Arten von Linie zu ersetzen bricht alle zu handhaben die Möglichkeiten

string myString myTextBox.Replace("\r\n", "NL").Replace("\n", "NL").Replace("\r", "NL"); 
1

Verwenden Sie diesen Kabeljau e

var myString = myTextBox.Text.Replace("\r","NL"); 

Dies ist für die Kompatibilität mit jedem Betriebssystem.

+0

Danke Sir !! Das war die Antwort – user1924391

1

A question mit einem ähnlichen Thema hatte eine recht elegante answer Sie könnte interessant betrachten zu verwenden:

using System.Text.RegularExpressions; 

myTextBox.Text = Regex.Replace(myTextBox.Text, @"\r(?!\n)|(?<!\r)\n", "NL");