如何从字符串的开头到第一个非数字的所有数字?

时间:2018-06-13 08:28:07

标签: javascript

如何从字符串的开头到第一个非数字的所有数字?

例如,我想从'12345abc'获得12345,另一个例子从'5678kkk'获得5678。

有什么方法可以做到这一点吗?

3 个答案:

答案 0 :(得分:1)

您可以将RegExp#match^锚一起使用,从头开始查找数字字符:

const string = "12345abc";
const matches = string.match(/^\d+/);

// Fallback if no matches found
const numbers = (matches || [])[0];

console.log(numbers);

答案 1 :(得分:0)

使用parseInt()因为它会将数字字符以外的所有字符分开,因此您不需要自定义逻辑来获取数字值,如下所述:

console.log(parseInt('12345abc'));

  

parseInt()函数解析字符串参数并返回指定基数的整数(数学系统中的基数)。

答案 2 :(得分:0)

使用parseInt

let str = '5678kkk';

console.log(parseInt(str));