使用javascript从字符串中提取浮点数
我有一个javascript字符串:使用javascript从字符串中提取浮点数,javascript,html,regex,string,floating-point,Javascript,Html,Regex,String,Floating Point,我有一个javascript字符串: ECTS: 7.5 pts 我需要从这个字符串中提取7.5,并将其解析为浮点值 我尝试过搜索,但我找到的解决方案都没有奏效。我试过: var regex = /^\d+\.\d{0,3}$/; var string = "ECTS: 7.5 pts"; var number = parseFloat(string.match(regex)); console.log("number is: " + number);
ECTS: 7.5 pts
我需要从这个字符串中提取7.5
,并将其解析为浮点值
我尝试过搜索,但我找到的解决方案都没有奏效。我试过:
var regex = /^\d+\.\d{0,3}$/;
var string = "ECTS: 7.5 pts";
var number = parseFloat(string.match(regex));
console.log("number is: " + number);
我试过使用几种不同的正则表达式,但没有一种能奏效
我创建这个来说明这个问题
编辑1
我以前把这个/\d+/
作为我的正则表达式,但不包括浮点数
编辑2
最后我把它用作我的正则表达式/[+-]?\d+(\.\d+)/g
更新的您尝试过这个吗?
var digits=Number((/(\d+\.\d+/.exec('ECTS:7.5 pts')| |[]).pop())代码>这很好地工作,不需要正则表达式:
var s = "ECTS: 7.5 pts";
var n = parseFloat(s.split(" ")[1]);
$("#test").text(n);
@WiktorStribiżew我已经检查过这个了,但它不起作用。我又试了一次,成功了。谢谢..很好的解决方案,但我可能会遇到这个问题,因为我有很多这样的字符串,当谈到间距时,它们并不都是一样的。你当然不知道+我知道你的解决方案。