我有一个如下格式的字符串
string s = "This is a Test String.\n This is a next line.\t This is a tab.\n'
我想从上面的字符串中删除所有出现的\n和\r。
我已经尝试了string s = s.Trim(new char[] {'\n', '\r'});但这并没有帮助。
我有一个如下格式的字符串
string s = "This is a Test String.\n This is a next line.\t This is a tab.\n'
我想从上面的字符串中删除所有出现的\n和\r。
我已经尝试了string s = s.Trim(new char[] {'\n', '\r'});但这并没有帮助。
当前回答
FYI,
Trim()已经做到了。
以下LINQPad示例:
void Main()
{
var s = " \rsdsdsdsd\nsadasdasd\r\n ";
s.Length.Dump();
s.Trim().Length.Dump();
}
输出:
23
18
其他回答
FYI,
Trim()已经做到了。
以下LINQPad示例:
void Main()
{
var s = " \rsdsdsdsd\nsadasdasd\r\n ";
s.Length.Dump();
s.Trim().Length.Dump();
}
输出:
23
18
我喜欢使用正则表达式。在这种情况下,你可以这样做:
string replacement = Regex.Replace(s, @"\t|\n|\r", "");
正则表达式在。net世界中不像在动态语言中那么流行,但是它们提供了很多操作字符串的功能。
LINQ方法:
string s = "This is a Test String.\n This is a next line.\t This is a tab.\n'";
string s1 = String.Join("", s.Where(c => c != '\n' && c != '\r' && c != '\t'));
string remove = Regex.Replace(txtsp.Value).ToUpper(), @"\t|\n|\r", "");
就这么做吧
s = s.Replace("\n", String.Empty).Replace("\t", String.Empty).Replace("\r", String.Empty);