我有两个字符串,我想从最后一个位置分离出数字。如果字符串不以数字结尾,则应返回0
或false
。
下面是一些例子:
- string
"A1C10"
应该返回10
- string
"20AX23"
应该返回23
- string
"15AZC"
应该返回0
或false
您可以在这里使用match
:
var inputs = ["A1C10", "20AX23", "15AZC"];
var outputs = inputs.map(x => x.match(/d+$/) ? x.match(/d+$/)[0] : "0");
console.log(outputs);
对于您的新要求,我们可以拆分(?<=D)(?=d*$)
上的输入:
var inputs = ["A1C10", "20AX23", "15AZC"];
for (var i=0; i < inputs.length; ++i) {
var parts = inputs[i].split(/(?<=D)(?=d*$)/);
if (parts.length == 1) parts.push("0");
console.log(inputs[i] + " => " + parts);
}