你或许知道你能使用String.Trim方法去除字符串的头和尾的空格,不幸运的是. 这个Trim方法不能去除字符串中间的C#空格。
static void Main()
{
//demo1 除去空格,提取出各个单词
string s = "a b c";
string[] word = s.Split(new char[] { ' ' });
foreach (string temp in word)
Console.WriteLine(temp);
//demo2 直接去除所有空格
s=s.Replace(" ","");
Console.WriteLine(s);
//demo3 去掉首尾空格
s = " aaa ";
s = s.Trim();
Console.WriteLine(s);
}
另一版本如下:
string text = " My test\nstring\r\n is\t quite long ";
string trim = text.Trim();
这个'trim' 字符串将会是:
"My test\nstring\r\n is\t quite long" (31 characters)
另一个清除C#空格方法是使用 String.Replace 方法, 但是这需要你通过调用多个方法来去除个别C#空格:
string trim = text.Replace( " ", "" );
trim = trim.Replace( "\r", "" );
trim = trim.Replace( "\n", "" );
trim = trim.Replace( "\t", "" );
这里最好的方法就是使用正则表达式.你能使用Regex.Replace方法, 它将所有匹配的替换为指定的字符.在这个例子中,使用正则表达式匹配符"\s",它将匹配任何空格包含在这个字符串里C#空格, tab字符, 换行符和新行(newline).
string trim = Regex.Replace( text, @"\s", "" );
这个'trim' 字符串将会是:
"Myteststringisquitelong" (23 characters)