我正在尝试从字符串中删除空格。但是,我想删除分隔符周围的空格以及字符串的开头和结尾。
之前:
" one two, three , four ,five six,seven "
之后:
"one two,three,four,five six,seven"
我尝试过这种模式没有成功:
/,\s+|\s$/g,","
答案 0 :(得分:2)
您可以使用/\s*,\s*/g
,然后使用.trim()
字符串。
答案 1 :(得分:1)
使用正则表达式^\s+|(,)\s+|\s+(?=,)|\s$
并将匹配替换为第一个捕获组$1
:
var string = " one two, three , four ,five six,seven ";
console.log(string.replace(/^\s+|(,)\s+|\s+(?=,)|\s$/g, '$1'));

当正则表达式引擎在逗号(,)\s+
之后遇到空格时,捕获组为空或包含逗号(为此我们最好使用lookbehind,但JavaScript不支持它)。