2011-07-19 47 views
4

我怎麼能舒展一些字符串元素_text替換在C#2箇中斷1個換行符

A 
B 
C 

A 

B 

C 

其實,我有一定的文字從DB

_text = this.NormalizeString(DinamicLibrary.LoadText(DinamicLibrary.Path[(int)_category] + _textdllName, this.TextNumber)); 

我應該與此查詢或_text以後做的就是我想要的故事嗎? 據我所知,我應該改變\n\n\n但不知道如何。

+0

類似http://stackoverflow.com/questions/5470385/how-to -in-characters-of-a-string -insert-spaces- – V4Vendetta

回答

12
var result = s.Replace(Environment.NewLine, Environment.NewLine + Environment.NewLine); 
+0

謝謝。順便說一句,是否有可能取代第三場比賽? –

+0

@ garm0nboz1a,你的意思是來自第三個'\ r \ n'嗎? –

+0

System.String是否支持乘法運算符?即(Environment.NewLine * 2)==「\ n \ n」?會很酷:) – MattDavey

2
string newString = oldString.Replace("\n", "\n\n"); 
0

可以複製換行符,使用_text.Replace("\n", "\n\n");。實際上,你只要回答,我只知道方法的名字來稱呼:)

1
string newString = oldString.Replace(Environment.NewLine, Environment.NewLine + Environment.NewLine); 
0

您可以使用Environment.NewLine和與string.replace()

_text.Replace("\n", Environment.NewLine + Environment.NewLine); 
+0

就像@polishchuk說。 –

0

通常一個換行符是\ r和\ n的組合,相當於Environment.NewLine(「\ r \ n」)。但是\ n也可以執行換行符。兩者都很好,只需使用替換方法即可添加另一個斷路器。

1

從3 \r\n匹配您可以使用正則表達式:(?s)(?<=(?:\r\n[^\r\n]*){2})\r\n,如:

var s = @"A 
B 
C 
D 
E 
F"; 
var result = Regex.Replace(s, @"(?s)(?<=(?:\r\n[^\r\n]*){2})\r\n", Environment.NewLine + 
    Environment.NewLine); 

輸出:

A 
B 
C 

D 

E 

F