正则表达式从字符串的末尾获得数字
问题描述:
我有一个像stringNumber变量的id,如下所示:example12 我需要一些JavaScript正则表达式来从字符串中提取12个“example”对于所有id都是常量只是数字会有所不同。正则表达式从字符串的末尾获得数字
答
此正则表达式匹配字符串末尾的数字。
var matches = str.match(/\d+$/);
如果成功,它将返回其0
个元素匹配的Array
。否则,它将返回null
。
在访问0
成员之前,请确保已进行匹配。
if (matches) {
number = matches[0];
}
如果您必须将其作为Number
,您可以使用函数来转换它,例如parseInt()
。
number = parseInt(number, 10);
答
正则表达式:
var str = "example12";
parseInt(str.match(/\d+$/)[0], 10);
字符串操作:
var str = "example12",
prefix = "example";
parseInt(str.substring(prefix.length), 10);
提示:它是更有效地使用'[0-9]'比它是使用'\ D'。查看https://*.com/questions/16621738 – Marathon55 2017-12-26 16:11:28
@ Marathon55很可能是这种情况,但我仍然会使用'\ d'(除非它已成为性能瓶颈) – alex 2018-01-09 10:37:49