如果连续存在两个以上的空格,则删除字符串中的空格

时间:2012-09-05 12:25:39

标签: regex string

假设我有这样的字符串,

String sample = "This is a sample  string    with more than   two spaces in      a string   ";

现在我需要做的是让字符串在每个单词之间只有一个空格。 提前谢谢。

3 个答案:

答案 0 :(得分:8)

如果字面意思是“空格”,那么您可以用一个空格替换/ {2,}/。请注意,正则表达式中的空格与文本中的空格匹配。

如果用“space”表示你实际上是指“所有空格”(空格,制表符,换行符等),那么请改用\s+

答案 1 :(得分:3)

将它们与\s+正则表达式匹配,并替换为单个空格。 如果您只想替换多个空格(不是制表符和其他白色字符),请使用\ +

答案 2 :(得分:1)

如果这是C#,那么你可以

using System.Text.RegularExpressions;
…
      String sample = "This is a sample  string    with more than   two spaces in      a string   ";
      sample = Regex.Replace(sample, @"\s+", " ");