Javascript为字符串中的所有单个数字数字添加前导零

时间:2015-01-14 20:35:34

标签: javascript string

var string = "name t13 - cat y4 - dat s6";

应更改为“name t13 - cat y04 - dat s06”

我需要字符串始终至少有两位数字。如果只有一个数字,如何将字符串中的数字更改为零?

1 个答案:

答案 0 :(得分:3)

String.prototype.replace()接受正则表达式作为模式匹配的第一个参数。您还可以提供一个函数作为为每个匹配调用的第二个参数,并返回一个替换值。

var tests = [
    "s61 t1 e32 w2 i5 e600",
    "name t13 - cat y4 - dat s6",
    "others13y4sixs6"
];

tests.forEach(function(test){
    console.log(test.replace(/\D\d(?!\d+)/g, function(c) { 
        return c.charAt(0) + "0" + c.charAt(1); 
    }));
});