2010-12-20 72 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