jQuery删除所有字符,但数字和小数

use*_*950 5 javascript replace currency

var price = "$23.03";
var newPrice = price.replace('$', '')
Run Code Online (Sandbox Code Playgroud)

这可行,但价格也可以是这样的:

var price = "23.03 euros";
Run Code Online (Sandbox Code Playgroud)

和许多其他货币.

无论如何,我只能留下数字和小数(.)?

Mat*_*ain 28

var newPrice = price.replace(/[^0-9\.]/g, '');
Run Code Online (Sandbox Code Playgroud)

不需要jQuery.您还需要检查是否只有一个小数点,如下所示:

var decimalPoints = newPrice.match(/\./g);

// Annoyingly you have to check for null before trying to
// count the number of matches.
if (decimalPoints && decimalPoints.length > 1) {
    // do whatever you do when input is invalid.
}
Run Code Online (Sandbox Code Playgroud)