Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/apache-kafka/3.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 - Fatal编程技术网

Javascript 将值空间替换为下划线,最后一个空格除外

Javascript 将值空间替换为下划线,最后一个空格除外,javascript,Javascript,预期输出='abc_xyz' 当前输出='abc_xyz_' 更新: 如果单词数超过2,下面提到的答案都不起作用 例如:“ab cd ef gh ij”首先修剪字符串,然后替换空格 str = 'abc xyz ' 字符串的方法trim()替换字符串结尾和开头的所有空白字符,因此只需编写: str.replace(/\s+$/g, '').replace(" ", "_");; 先修剪,然后更换: var res = str.trim().replace(" ", "_");

预期输出='abc_xyz' 当前输出='abc_xyz_'

更新:

如果单词数超过2,下面提到的答案都不起作用


例如:“ab cd ef gh ij”

首先修剪字符串,然后替换空格

str = 'abc xyz '
字符串的方法
trim()
替换字符串结尾和开头的所有空白字符,因此只需编写:

str.replace(/\s+$/g, '').replace(" ", "_");;

先修剪,然后更换:

      var res = str.trim().replace(" ", "_");

实际上,有些浏览器不支持
trim()
功能(例如,IE 8及以下版本)

我建议您使用正则表达式进行修剪:

var res = string.trim().replace(' ','_');

没错,
.replace
仅替换字符串中的第一个出现项,您也可以使用以下选项:

var res = str.replace(/^\s+|\s+$/gm,'').replace(" ", "_");

str.trim().替换(“”,“”);试试这个零钱
var res=str.replace(/^\s+|\s+$/gm.)。replace(/\s+/g,”)
var res = str.replace(/^\s+|\s+$/gm,'').replace(" ", "_");
var res = str.trim().split(/\s+/).join('_')