this.folderObj.folderName
是字符串,我打印了该字符串console
的{{1}},我使用了aaa aaa
,但是它仅在空格之前和之后删除,如何删除多个空格字符串的两个单词之间的空格,并希望像这样trim()
aaa aaa
我想要的预期控制台
folderObj : Folder = new Folder();
console.log(this.folderObj.folderName.trim()); // aaa aaa
答案 0 :(得分:10)
使用正则表达式匹配两个或多个空格字符,并替换为单个空格:
const folderName = ' aaa aaa';
console.log(
folderName
.replace(/ {2,}/g, ' ')
.trim()
);
当然,您也可以将一个或多个空格字符替换为+
,代码看起来会更好,但是效率会稍微降低:
const folderName = ' aaa aaa';
console.log(
folderName
.replace(/ +/g, ' ')
.trim()
);
答案 1 :(得分:4)
尝试使用replace()
将所有单个和多个空格替换为单个空格。
this.folderObj.folderName.trim().replace(/ +/g, ' ');
演示:
console.log('aaa aaa'.replace(/ +/, ' '))
答案 2 :(得分:1)
let folderName = ' abcd xya ';
console.log(folderName.replace(/\s+/g, ' ').trim());
答案 3 :(得分:0)
const folderName = " aaa aaa";
let resultStr = folderName
.trim()
.split(' ')
.filter(item => item.length > 0)
.join(' ');
console.log(resultStr);