js提取字符串中的数字

已邀请:
匿名用户

匿名用户

赞同来自:

1、像“2.89元”、“123爱E族”这样前面为数字,后面为非数字的字符串,可以直接使用parseFloat()函数即可:
var num1 = parseFloat("2.89元"); //num1: 2.89
var num2 = parseFloat("123爱E族"); //num2: 123

 2、像“生于1999年”、“行驶288公里”这样字符串中只含有一个整型数值的字符串,直接将使用正则表达式将非数字的字符删除掉就行:
var str1 = '生于1999年';
var num1 = str1.replace(/[^\d]/g, ''); //num1: 1999

3、 对于字符串中含有多个数值,使用字符串的match方法,通过正则表达式“/\d+(.\d+)?/g”即可提取字符串的所有数字(包括整数和小数):
var str = '大米:2.57元/斤,白菜:3.65元/斤';
var arr = str.match(/\d+(.\d+)?/g);
//arr: ["2.57", "3.65"]

要回复问题请先登录注册