使用javascript中的regex用下划线替换每个前导和尾随空格

Mar*_*ger 3 javascript regex string whitespace replace

var str = '  Some string    ';
var output = str.replace(/^\s|\s(?=\s*$)/g , '_');
Run Code Online (Sandbox Code Playgroud)

输出应该如下所示

'___Some string____'
Run Code Online (Sandbox Code Playgroud)

此代码适用于尾随空格,但所有前导空格都只用一个下划线替换.

这个工作的php正则表达式是: /\G\s|\s(?=\s*$)/

epa*_*llo 7

不漂亮,但完成工作

var str = "  Some string    ";
var newStr = str.replace(/(^(\s+)|(\s+)$)/g,function(spaces){ return spaces.replace(/\s/g,"_");});
Run Code Online (Sandbox Code Playgroud)