Javascript 仅在字符的任一侧添加单个空格
我需要检查所有3个箱子。如果我只使用上面所有3个Javascript 仅在字符的任一侧添加单个空格,javascript,regex,string,Javascript,Regex,String,我需要检查所有3个箱子。如果我只使用上面所有3个replace()语句,它会增加额外的空格。 还有更好的办法吗?(可能是正则表达式)这个正则表达式应该做到: //case 1 var str = 'x=12'; str = str.replace(/=/g, ' = '); // str = 'x = 12'; //case 2 var str = 'x =12'; str = str.replace(/ =/g, '= '); // str = 'x = 12'; //case 3
replace()
语句,它会增加额外的空格。
还有更好的办法吗?(可能是正则表达式)这个正则表达式应该做到:
//case 1
var str = 'x=12';
str = str.replace(/=/g, ' = '); // str = 'x = 12';
//case 2
var str = 'x =12';
str = str.replace(/ =/g, '= '); // str = 'x = 12';
//case 3
var str = 'x= 12';
str = str.replace(/= /g, ' ='); // str = 'x = 12';
您还可以使用:
/ ?= ?/g
此处\s
匹配所有空白字符
它检查前后是否有带空格的=
符号。?
符号检查空格字符是否匹配零次或一次
/\s?=\s?/g
str = str.replace(/ ?= ?/g, ' = ');
//case 1
var str = 'x=12';
str.replace(/\s*=\s*/,' = '); // str = 'x = 12';
//case 2
var str = 'x =12';
str.replace(/\s*=\s*/,' = '); // str = 'x = 12';
//case 3
var str = 'x= 12';
str.replace(/\s*=\s*/,' = '); // str = 'x = 12';