我知道我们可以使用
从字符串中提取整数值var x = "> 1";
x = parseInt(x.match(/\d+/)[0], 10));
如何从字符串中获取浮点值
示例:var x = "> 1.1"
我知道我们可以使用x.substring(2);
但是对于更通用的解决方案?因为上面的内容不会给出准确的结果
var x = "1.1"
那么从
中提取浮点值1.1
的最佳方法是什么?
var x = "> 1.1"
答案 0 :(得分:4)
使用parseFloat
和与带可选小数和减号的数字匹配的正则表达式。
var f = parseFloat(x.match(/-?(?:\d+(?:\.\d*)?|\.\d+)/)[0]);
答案 1 :(得分:1)
x = parseFloat(x.match(/[-+]?([0-9]*\.[0-9]+|[0-9]+)/));
答案 2 :(得分:0)
使用parseFloat()。它完全符合您的要求。
答案 3 :(得分:0)
您可以尝试使用下面的一个,使用match函数将数字(例如浮点数或整数)提取为任意数量的数组。
str = 'On schedule: 3243.8 miles away (4491 minutes)';
values = str.match(/[0-9.]+/g); //=> ["3243.8", "4491"]