分享几种js提取字符串中的数字

admin 0

利用js脚本从一串字符串中提取数字有多种方法,下面飞鸟慕鱼博客就来简单的介绍几种常用到的。

js提取字符串中数字的方法

1、利用 parseFloat() 方法提取字符串中的数字。

parseFloat() 方法提取字符串中的数字,有很多的限制。它只能提取开头为数字的字符串中的数字,如果字符串的开头第一个字符为非数字,则会提取失败。

例:

//feiniaomyconsole.log(parseFloat('1234'))
//1234console.log(parseFloat('123.4123')) 
// 123.4console.log(parseFloat('1231234')); 
// NaNconsole.log(parseFloat('m123.5')); //NaN

2、JS 使用正则提取字符串中的数字

例1:

可以利用正则的方法将字符串中非数字的字符给去掉,留下的就是数字啦。但要注意的是,如果是要想提取数字中有非整数的部份(带有小数点的数),则无法提取小数点。

//123var num = '1234123'.replace(/[^\d]/g, ""); console.log(num); 
//1234var num2 = '123.4123'.replace(/[^\d]/g, ""); console.log(num2); 
//1234var num3 = '1231234'.replace(/[^\d]/g, ""); console.log(num3); 
//1234var num4 = 'm123.5'.replace(/[^\d]/g, ""); console.log(num4);
//1235

例2:

通过上面的示例,我们可以修改一下正则表达式,并使用 match 方法来调用它。

//123var num = '1234123'.match(/\d+(\.\d+)?/g); console.log(num); 
//['1234']var num2 = '123.4123'.match(/\d+(\.\d+)?/g); console.log(num2);
//['123.4']var num3 = '1231234'.match(/\d+(\.\d+)?/g); console.log(num3);
//['1234']var num4 = 'm123.5'.match(/\d+(\.\d+)?/g); console.log(num4);
//['123.5]var num4 = 'm123.55sd58sdf56sdf85sdf6e8f5sd6f
'.match(/\d+(\.\d+)?/g); console.log(num4);
//['123.55', '58', '56', '85', '6', '8', '5', '6']

通过上面的示例,可以看出JS将字符串中的所有数字(包括小数)都提取什么,并通过以数组的方式返回,方便我们进行对提现结果的处理。

标签: 字符串 分享 提取 数字

发表评论 (已有0条评论)

还木有评论哦,快来抢沙发吧~