Javascript - How to remove all extra spacing between words

前端 未结 7 1687
闹比i
闹比i 2020-12-05 02:03

How can I remove all extra space between words in a string literal?

\"some    value\"

Should become

\"some value\"
<         


        
相关标签:
7条回答
  • 2020-12-05 02:27

    Another (perhaps easier to understand) regexp replacement that will do the trick:

    var input = /* whatever */;
    input = input.replace(/ +/g, ' ');
    

    The regexp matches one or more spaces, so the .replace() call replaces every single or repeated space with a single space.

    0 讨论(0)
  • 2020-12-05 02:29
    var str = "    This    should  become   something          else   too . "
    $.trim(str).replace(/\s(?=\s)/g,'')
    

    This uses lookahead to replace multiple spaces with a single space.

    0 讨论(0)
  • 2020-12-05 02:31

    jsFiddle Example

    "    This    should  become   something          else   too . ".replace(/[\s\t]+/g,' ');
    
    0 讨论(0)
  • 2020-12-05 02:33
    var string = "    This    should  become   something          else   too . ";
    string = string.replace(/\s+/g, " ");
    

    This code replaces a consecutive set of whitespace characters (\s+) by a single white space. Note that a white-space character also includes tab and newlines. Replace \s by a space if you only want to replace spaces.

    If you also want to remove the whitespace at the beginning and end, include:

    string = string.replace(/^\s+|\s+$/g, "");
    

    This line removes all white-space characters at the beginning (^) and end ($). The g at the end of the RegExp means: global, ie match and replace all occurences.

    0 讨论(0)
  • 2020-12-05 02:36
    var str = 'some    value';
    str.replace(/\s\s+/g, ' ');
    
    0 讨论(0)
  • 2020-12-05 02:43
    var str = "    This    should  become   something          else   too . ";
    str = str.replace(/ +(?= )/g,'');
    

    Here's a working fiddle.

    0 讨论(0)
提交回复
热议问题