C# 替换字符串中的空格
当我打电话时C# 替换字符串中的空格,c#,C#,当我打电话时 string t = tmp.Replace(@"\n", "").Replace(@"\t", ""); 其中,tmp是一个字符串文本,包含如下内容:'\n\t\t\t\t\tmirdochlate'(也考虑字符串中的单引号)结果字符串t保持不变 我在哪里错过了从输入中删除空白 顺便说一句:因此,实际字符串可能包含有效空格,也可能不包含有效空格,我只是在搜索制表符和新行。因为您的tmp字符串实际上看起来是这样的(我假设它不是逐字字符串) \n是新行,\t是制表符 并且这个字符串
string t = tmp.Replace(@"\n", "").Replace(@"\t", "");
其中,tmp
是一个字符串文本,包含如下内容:'\n\t\t\t\t\tmirdochlate'
(也考虑字符串中的单引号)结果字符串t
保持不变
我在哪里错过了从输入中删除空白
顺便说一句:因此,实际字符串可能包含有效空格,也可能不包含有效空格,我只是在搜索制表符和新行。因为您的
tmp
字符串实际上看起来是这样的(我假设它不是逐字字符串)
\n
是新行,\t
是制表符
并且这个字符串没有任何\n
或\t
,有字符替换它
您应该使用,而不是逐字字符串文字
string s = "'\n\t\t\t\t\tmirDochLatte'";
string t = s.Replace("\n", "").Replace("\t", "");
Console.WriteLine(t); // 'mirDochLatte'
您正在混合文字和转义字符。实际上,
@“\n”
实际上是这样的文字:\n
,而不是您期望的行尾
尝试删除逐字记录操作符@
:
string t = tmp.Replace("\n", "").Replace("\t", "");
我建议也删除
\r
,因为Windows行尾既有\r
又有\n
而不是@“\t”
使用简单的“\t”
。前者表示一个“斜杠”和“t”字符串,而后者是一个“制表符”字符,您需要它。@quetzalcatl是对的。考虑“<代码>”\“r”/代码>。因为“简单的键入”而投票关闭。如果空白仅出现在字符串的开头或结尾,请考虑使用<代码>string@joeOP表示字符串的开头和结尾都有一个引号,因此Trim
在这里不起作用。
string t = tmp.Replace("\n", "").Replace("\t", "");