Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/462.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用javascript从字符串中提取浮点数_Javascript_Html_Regex_String_Floating Point - Fatal编程技术网

使用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);

我有一个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);
我试过使用几种不同的正则表达式,但没有一种能奏效

我创建这个来说明这个问题

编辑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我已经检查过这个了,但它不起作用。我又试了一次,成功了。谢谢..很好的解决方案,但我可能会遇到这个问题,因为我有很多这样的字符串,当谈到间距时,它们并不都是一样的。你当然不知道+我知道你的解决方案。