簡體   English   中英

Javascript-殺死字符串前面的空白

[英]Javascript - kill white space in front of string

我做了一些服務器請求,服務器用一個在字符串前面有很多空格的字符串回復了我。 字符串是USERNAME EXIST

我知道如何使用:

String.prototype.killWhiteSpace = function() {
return this.replace(/\s/g, '');};

String.prototype.reduceWhiteSpace = function() {
return this.replace(/\s+/g, ' ');};

但是第一個在第一個回答我USERNAMEEXISTS,第二個在“ USERNAME EXIST”上回答(字符串前面有一個空格)。 有什么方法可以殺死字符串前后的所有空格?

在正則表達式中,使用^匹配字符串的開頭,使用$匹配字符串的結尾:

String.prototype.killWhiteSpace = function() {
    return this.replace(/^\s*|\s*$/g, '');
};

通常,剝離空白稱為修整 ,並且已經在現代瀏覽器中本地實現。 因此,您可能要使用此功能:

String.prototype.trim = String.prototype.trim || 
  function() {
      return this.replace(/^\s*|\s*$/g, '');
  };

如果它尚不存在,它將創建用於修剪的墊片,否則它將保留本機實現(速度更快)。

字符串修剪是一個有趣的主題。 一些瀏覽器可以比其他瀏覽器更好地優化某些正則表達式。 這是一篇好文章: http : //blog.stevenlevithan.com/archives/faster-trim-javascript

我通常使用該文章中的第一種方法:

String.prototype.killWhiteSpace = function() {
  return this.replace(/^\s\s*/, '').replace(/\s\s*$/, '');
};

請注意,本文(和此解決方案)着重於性能。 這對您可能並不重要,這里的其他答案當然很合適。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM