javascript regexp,无法获取+表达式

Rob*_*b F 1 javascript regex

我试图按照CSS格式从字符串中提取数字,如下所示:

str == "50.1px"

sz = str.match(/+([0-9]|\.)/)
Run Code Online (Sandbox Code Playgroud)

它抱怨+表达式,除非我逃避它,但然后sz是null.如果我删除+它只返回第一个数字.我完全难过了.

jAn*_*ndy 5

你应该只使用Javascripts .parseFloat().它会自动删除尾随字符.

sz = parseFloat('50.1px');  // 50.1
Run Code Online (Sandbox Code Playgroud)

MDN:

parseFloat解析其参数,一个字符串,并返回一个浮点数.如果遇到符号(+或 - ),数字(0-9),小数点或指数以外的字符,则返回到该点的值,并忽略该字符和所有后续字符.允许前导和尾随空格.