Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/426.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 用单个字符替换可变长度子字符串_Javascript_Regex_Escaping_Spaces - Fatal编程技术网

Javascript 用单个字符替换可变长度子字符串

Javascript 用单个字符替换可变长度子字符串,javascript,regex,escaping,spaces,Javascript,Regex,Escaping,Spaces,我的JavaScript接受逗号分隔的名称列表,我将这些名称放入一个数组中。名称中允许有空格,但我想在两个单词之间只允许有一个空格(但名称中不能只有两个空格,因为名称中可以有多个单词) 如果它只是一个固定数量的空间,那么就很容易弄清楚了,但是对于可变数量的空间,我不知道该怎么做 以下是一个例子: var arr = ["time", "my name is something", "hello world"]; 在上面的数组中,我想用一个空格替换“my name is somet

我的JavaScript接受逗号分隔的名称列表,我将这些名称放入一个数组中。名称中允许有空格,但我想在两个单词之间只允许有一个空格(但名称中不能只有两个空格,因为名称中可以有多个单词)

如果它只是一个固定数量的空间,那么就很容易弄清楚了,但是对于可变数量的空间,我不知道该怎么做

以下是一个例子:

var arr = ["time", "my name is        something", "hello world"];
在上面的数组中,我想用一个空格替换“my name is something”元素中的额外空格

到目前为止,我尝试的是计算for循环中每个元素中的空格数。如果空格的数量超过一个,我将跳过它们,并在最后将子字符串的其余部分附加到目前为止遍历的子字符串

我想知道是否可以使用一些正则表达式来完成

类似的内容(将多个空格
\s+
替换为一个
'

var arr = ["time", "my name is        something", "hello world"];
arr = arr.map(function(i){
    return i.replace(/\s+/g, ' ');
});