2010-12-20 112 views
11

我在字符串中有一些Html我試過儘量多次刪除\ r但失敗。從字符串中刪除 r

text.Replace("\r\n", "").Replace("\r", "").Replace("\n", ""); 
+0

這可能是一個愚蠢的問題,但它是值得一問。您是否試圖刪除回車符,或者您是否嘗試刪除文字字符串「\ r」? – David 2010-12-20 19:19:24

+0

也許您需要移除'
'/'
'標記。或者,也許你沒有分配替換的結果,所以'text = text.Replace..' – thirtydot 2010-12-20 19:21:14

回答

21

您需要將結果分配回text,如:

text = text.Replace("\r\n", "").Replace("\r", "").Replace("\n", ""); 
+0

Greattttttttt我與它作了近3個小時 – 2010-12-20 19:24:58

+0

如何刪除「\」其不一樣? – 2010-12-20 19:27:46

+1

@Afnan,記得下次再提前2小時45分鐘吧:-) – 2010-12-20 19:28:24

3

你接近:

text = text.Replace("\r\n", "").Replace("\r", "").Replace("\n", ""); 

您必須將.Replace操作的結果賦回到字符串本身(或另一個)。否則,結果將無濟於事。

+1

一分鐘太慢:) – 2010-12-20 19:35:39

1

text.Replace返回新修改的字符串。它不會改變它所操作的字符串。所以請確保你正在捕獲返回值。

0
str = str.Replace("\\\\r","").Replace("\\\\n",""); 

您可能需要使用轉義字符

+1

\是不字面的,\ r是一個轉義序列表示一個回車(0x0D),它與\ n換行符(0x0A)一起是要刪除的內容,而不是文字\(0x5C)r(0x72)等。 – 2010-12-20 19:26:15

+2

也可以使用str = str.Replace(@ 「\ r」,string.Empty).Replace(@「\ n」,string.Empty);或簡單地使用重載的替換方法與字符如:str.Replace('\ r',string.Empty)... – tivo 2010-12-20 19:27:49

+0

@tivo,不,你不能。 'Replace'的重載沒有將'char'和'string'作爲兩個參數。 – 2016-05-16 19:58:05