我有一些看起来像这样的文字 -
" tushar is a good boy "
使用javascript我想删除字符串中的所有额外空格。
结果字符串应该没有多个空格而只有一个空格。此外,起点和终点不应该有任何空格。所以我的最终输出应该是这样的 -
"tushar is a good boy"
我目前正在使用以下代码 -
str.replace(/(\s\s\s*)/g, ' ')
这显然失败了,因为它没有处理字符串开头和结尾的空格。
答案 0 :(得分:15)
这可以在一次String#replace
电话中完成:
var repl = str.replace(/^\s+|\s+$|\s+(?=\s)/g, "");
// gives: "tushar is a good boy"
答案 1 :(得分:5)
答案 2 :(得分:5)
这很好用:
function normalizeWS(s) {
s = s.match(/\S+/g);
return s ? s.join(' ') : '';
}
答案 3 :(得分:3)
答案 4 :(得分:1)
这个正则表达式可能有助于去除空格
/^\s+|\s+$/g
答案 5 :(得分:-1)
尝试:
str.replace(/^\s+|\s+$/, '')
.replace(/\s+/, ' ');
答案 6 :(得分:-1)
试
var str = " tushar is a good boy ";
str = str.replace(/^\s+|\s+$/g,'').replace(/(\s\s\s*)/g, ' ');
首先替换是删除字符串的前导和尾随空格。