最近遇到一個需求,傳入一個字符串,每三個字符插入一個空格
例:
傳入abcd1234
輸出 abc d12 34
思考了一下,準備寫一個函數(shù)如下
代碼如下:
function appendSpace(s)
{
var length = s.length;
var result = "";
var last = 0;
for(var i = 3;i<=length;i=i+3,last = last+3)
{
result = result+s.substring(i-3,i)+" ";
}
result = result+s.substring(last,length);
return result;
}
感覺這個函數(shù)有點屌絲。。。
于是換了replace()正則表達式替換方法
代碼如下:
/*
*$1表示引用匹配規(guī)則中第一對括號(此處為"(.{3})")命中的文本
*不加括號的時候會直接輸出$1
*/
function insertSpace(s)
{
var result =s.replace(/(.{3})/g,"$1 ");
return result;
}
運行效果如圖
更多信息請查看IT技術專欄