2014-07-16 35 views
2

我想用jQuery或Javascript找到準確檢測兩個連續非破壞空格的發生的方法。查找和替換雙「非破壞空間」的正則表達式

text = text.replace(/  /g, ""); 

text = text.replace(/ {2}/g, ""); 

舉例來說這是正確的我:

HELLO  WORLD 

但是這行沒有工作

but no HELLO    WORLD 

有人可以幫我嗎?

+0

'text.replace(/     /克, 「」);'工作對我來說:HTTP:// jsfiddle.net/G8Mge/ – jbrtrnd

回答

1

您可以使用:

var repl = text.replace(/( ){2}/g, ""); 
//=> HELLOWORLD 

你的正則表達式:/ {2}/有效嘗試匹配 ;

要刪除的 使用所有實例:

var repl = text.replace(/( )+/g, ""); 
+0

你不想要'g' - 否則它會在第二個例子中選擇連續的組。 –

+0

''HELLO         WORLD'.replace(/( ){2} /克, 「」);''是HELLOWORLD'但沒有'g'你不會得到同樣的結果。 – anubhava

+0

我明白你的觀點。如果他想刪除' '的所有實例,或者只是一組兩個,OP有點模糊。 –

0

只需使用這樣的替換僅來自空間 

text.replace(/ /g, ""); 

不需要使用兩次 ,因爲g用於全局搜索。


,這將允許你刪除任何類型的無用空間:

text.replace(/\s/g, "");