0

如何在与另一个字符组合的字符串中使用零填充?我搜索了一些示例,但他们只是以数字格式向我显示字符串。

例如 :

"000001" //Only number withount any character

我需要对组合字符进行零填充

例如 :

ABC000001 //This is inital value

然后我做一个操作来增加初始值。所以它将是:

ABC000002

但是当我到达“ABC000009”时。结果必须是“ABC000010”。

任何答案将不胜感激

4

2 回答 2

2

你可以

  • 将字符串分隔为右侧的一些字符和数字,
  • 添加一个值,
  • 填充字符串和
  • 返回一个包含所有部分的新字符串。

function add(string, value) {
    var [c, d] = string.match(/^(.*?)(\d+)$/).slice(1);
    
    return c + (+d + value).toString().padStart(d.length, '0');
}

console.log(add('ABC000001', 1));
console.log(add('A0BC00001', 1));

于 2018-06-05T12:00:48.080 回答
1
let current = Number('ABC000001'.substring(3));
current++;
let zeroString = 'ABC00000';
zeroString.substring(0, 8 - current.toString().length) + current;
  • 第一行通过删除前导字符串获取当前数字,
  • 第二行增加它,
  • 第三个有想要的字符串格式的声明,
  • 第四行是创建所需格式的新字符串。
于 2018-06-05T12:03:38.857 回答