web-dev-qa-db-ja.com

C#文字列の改行文字

C#文字列にHTMLコードが含まれています。 Visual StudioのText Visualizerを見ると、多数の改行が含まれていることがわかります。ただし、このコードを適用した後

string modifiedString = originalString.Replace(Environment.NewLine, "<br />");

テキストビジュアライザーをmodifiedStringで見てみると、3箇所を除いて改行がないことがわかります。改行以外の文字タイプはありますか?

5
peter

それらは単なる\rまたは\nかもしれません。チェックしたところ、VS 2010のテキストビジュアライザーは改行と\r\nの両方で表示されます。

この文字列

string test = "blah\r\nblah\rblah\nblah";

として現れる

blah
blah
blah
blah

テキストビジュアライザー。

だからあなたは試すことができます

string modifiedString = originalString
    .Replace(Environment.NewLine, "<br />")
    .Replace("\r", "<br />")
    .Replace("\n", "<br />");
16
juharr

これを処理する優れた方法は、正規表現を使用することです。

string modifiedString = Regex.Replace(originalString, @"(\r\n)|\n|\r", "<br/>");


これにより、3つの有効な改行タイプのいずれかがhtmlタグに置き換えられます。

3
Mick Bruno