假设我有以下字符串:“Stackoverflow”,我想在每三个数字之间插入一个空格,如下所示:“S tac kov erf low”从末尾开始。这可以用正则表达式完成吗?
我现在用for循环通过以下方式完成了它:
var splitChars = (inputString: string) => {
let ret = [];
let counter = 0;
for(let i = inputString.length; i >= 0; i --) {
if(counter < 4) ret.unshift(inputString.charAt(i));
if(counter > 3){
ret.unshift(" ");
counter = 0;
ret.unshift(inputString.charAt(i));
counter ++;
}
counter ++;
}
return ret;
}
我可以缩短这是某种方式吗?
最佳答案
您可以采取积极的前瞻性并添加空格。
console.log("StackOverflow".replace(/.{1,3}(?=(.{3})+$)/g, '$& '));
关于Javascript在字符串的第n个位置插入空格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63618059/