需要一个正则表达式,用一个whitepsace替换所有重复的空白 - 相互替换

时间:2011-03-07 04:04:22

标签: regex

我有一个简单的脚本(使用RegEx)来清理源字符串,只留下字母数字和空格字符。

有时候,我最终会找到一些相邻的空白字符。

例如

source: abc def ghi 
result: abc def ghi

source: a*bc D*f
result: abc df

source: a*bc *** def
result: abc  def  <-- notice the two spaces in there
expected result: abc def  <-- notice one space, here.

所以我希望一些正则表达式能够在一些源字符串中找到 2+个空格,并且用一个空白字符替换它

欢呼:)

3 个答案:

答案 0 :(得分:4)

只需使用\s\s+作为匹配的字符串,并使用一个空格作为替换。

答案 1 :(得分:1)

在C#中,这将是:

Regex regex = new Regex("\\s\\s+");
string output = regex.Replace(input, " ");

答案 2 :(得分:0)

这是一个快速的JavaScript函数。这会占用所有空格,而不仅仅是空格。

function stripExtraSpaces(text)
{
   var exp = new RegExp("[\\s]+","g");
   return text.replace(exp," ");
}