C# 删除字符串中任何位置的空格

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

 

另一版本如下:    

    1. string text = "  My test\nstring\r\n is\t quite long  ";  
    2. string trim = text.Trim(); 

        这个'trim' 字符串将会是:

        "My test\nstring\r\n is\t quite long"  (31 characters)

        另一个清除C#空格方法是使用 String.Replace 方法, 但是这需要你通过调用多个方法来去除个别C#空格:

    1. string trim = text.Replace( " """ );  
    2. trim = trim.Replace( "\r""" );  
    3. trim = trim.Replace( "\n""" );  
    4. trim = trim.Replace( "\t""" ); 

        这里最好的方法就是使用正则表达式.你能使用Regex.Replace方法, 它将所有匹配的替换为指定的字符.在这个例子中,使用正则表达式匹配符"\s",它将匹配任何空格包含在这个字符串里C#空格, tab字符, 换行符和新行(newline).

    1. string trim = Regex.Replace( text, @"\s""" ); 

        这个'trim' 字符串将会是:

    1. "Myteststringisquitelong"  (23 characters) 
posted @ 2010-04-21 15:05  pensir  阅读(38348)  评论(0编辑  收藏  举报