首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

怎么保留字符串中的一个空格

2013-12-26 
如何保留字符串中的一个空格!比如字符串是下面这样子:每个字符之间有不确定个数的空格,怎么才能使每个字符

如何保留字符串中的一个空格!
比如字符串是下面这样子:每个字符之间有不确定个数的空格,怎么才能使每个字符之间只存在一个空格。


  //原始字符串
  string s="a b  c   d    f g";
  //想得到的结果
  string s="a b c d f g";

[解决办法]
正则表达式
s=Regex.Replace(s, @"\s+", " ");
[解决办法]

            string source = "a b  c   d    f g";
            string patten = @"(?is)(?<=[\s])[\s]+";
            Regex reg = new Regex(patten);
            source = reg.Replace(source, "");

[解决办法]
Str= Regex.Replace(Str.Trim(), "\\s+", " ");

[解决办法]

string s = "a b  c   d    f g";
s = string.Join(" ", s.Split(new string[] { " " }, StringSplitOptions.RemoveEmptyEntries));

[解决办法]
我在学校的时候老师也让我做过这个算法题
当时我这么做的

//原始字符串
  string s="a b  c   d    f g";
  s = s.Trim();
  string resString = "";
  for(int i = 1 ; i < s.Length;i++){
     if(s[i]==" "&& s[i-1]=="")continue;
     resString+=s[i].ToString();
  }
  s=resString;

[解决办法]
你可以重新创造一下这个字符串
string.Join(" ", s.split(new char[]{' '},StringSplitOptions.RemoveEmptyEntries));

[解决办法]
引用:
string.Join(" ", from s in "a b  c   d    f g"
                where s != 0x20
                select s);


同意!如果确实是“每一个字符之间都有空格”,那么确实是这样比较好。

热点排行