如何刪除字符串中的空格?例如:如何使用JavaScript從字符串中刪除空格?
輸入:'/var/www/site/Brand new document.docx'
輸出:'/var/www/site/Brandnewdocument.docx'
感謝
如何刪除字符串中的空格?例如:如何使用JavaScript從字符串中刪除空格?
輸入:'/var/www/site/Brand new document.docx'
輸出:'/var/www/site/Brandnewdocument.docx'
感謝
這?
str = str.replace(/\s/g, '');
例
var str = '/var/www/site/Brand new document.docx';
document.write(str.replace(/\s/g, ''));
更新:基於this question,這樣:
str = str.replace(/\s+/g, '');
是一個更好的解決方案。它會產生相同的結果,但速度更快。
正則表達式
\s
是 「空白」 正則表達式,並g
是 「全球性」 的標誌,這意味着匹配所有\s
(空格)。
+
的一個很好的解釋可以找到here。作爲一個方面說明,你可以將單引號之間的內容替換爲任何你想要的,所以你可以用任何其他字符串替換空格。
var a = "/var/www/site/Brand new document.docx";
alert(a.split(' ').join(''));
alert(a.replace(/\s/g, ""));
這樣做的兩種方法!
我喜歡split()和join()。 –
var input = '/var/www/site/Brand new document.docx';
//remove space
input = input.replace(/\s/g, '');
//make string lower
input = input.toLowerCase();
alert(input);
var output = '/var/www/site/Brand new document.docx'.replace(/ /g, "");
or
var output = '/var/www/site/Brand new document.docx'.replace(/ /gi,"");
注:雖然您使用 'G' 或 'GI' 去除空間都表現相同。
如果我們在替換函數中使用'g',它將檢查完全匹配。但如果我們使用'gi',它會忽略區分大小寫。
僅供參考click here。
以下@rsplak回答:實際上,使用split/join方式比使用regexp更快。請參閱性能test case
所以
var result = text.split(' ').join('')
運行速度比
var result = text.replace(/\s+/g, '')
在小文本,這是不相關的,但情況下,當時間是很重要的,如G。在文本分析器中,尤其是在與用戶交互時,這很重要。
在另一方面,\s+
處理更多種類的空格字符。其中\n
和\t
,它也匹配\u00a0
字符,這就是當使用textDomNode.nodeValue
獲取文本時,打開的是
。
所以我覺得在這裏可以得出結論如下:如果你只需要更換空間' '
,使用分割/結合。如果可以有符號類的不同符號 - 使用replace(/\s+/g, '')
你可以嘗試使用這樣的:
input.split(' ').join('');
@Gaurav我已經看了一個類似的答案在SO,我看到'.replace(/ \ s +/g,'')'更經常。那和我的答案有區別嗎? –
在這種情況下是沒有區別的。但+用於至少一次發現。 – Gaurav
它完美無瑕!謝謝 – JLuiz