你或许知道你能使用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)