正则表达式从字符串的末尾获取数字

IT技术 javascript regex
2021-03-10 16:38:04

我有一个像 stringNumber 这样的 id 变量,如下所示:example12 我需要一些 javascript 正则表达式来从字符串中提取 12。“example”对于所有 id 都是常量,只是数字会不同。

2个回答

此正则表达式匹配字符串末尾的数字。

var matches = str.match(/\d+$/);

如果成功,它将返回Array带有第0th 个元素的匹配项。否则,它将返回null

在访问0成员之前,请确保已进行匹配。

if (matches) {
    number = matches[0];
}

js小提琴

如果必须将其作为 . Number,则可以使用函数将其转换,例如parseInt().

number = parseInt(number, 10);
提示:使用[0-9]使用更有效\d参见stackoverflow.com/questions/16621738
2021-05-12 16:38:04
@Marathon55 很可能是这种情况,但我仍然会使用\d自己(除非它成为性能瓶颈)
2021-05-14 16:38:04

正则表达式:

var str = "example12";
parseInt(str.match(/\d+$/)[0], 10);

字符串操作:

var str = "example12",
    prefix = "example";
parseInt(str.substring(prefix.length), 10);