考虑一种非DOM场景,您希望使用JavaScript/ECMAScript从字符串中删除所有非数字字符。保留在0-9
范围内的任何字符。
var myString = 'abc123.8<blah>';
//desired output is 1238
你要如何在普通的JavaScript中实现这个功能?请记住这是一个非DOM场景,所以jQuery和其他涉及浏览器和按键事件的解决方案都不适用。
考虑一种非DOM场景,您希望使用JavaScript/ECMAScript从字符串中删除所有非数字字符。保留在0-9
范围内的任何字符。
var myString = 'abc123.8<blah>';
//desired output is 1238
你要如何在普通的JavaScript中实现这个功能?请记住这是一个非DOM场景,所以jQuery和其他涉及浏览器和按键事件的解决方案都不适用。
这个,
.match(/\d|\.|\-/g).join('');
处理,
和.
以及-
示例:
"Balance -$100,00.50".match(/\d|\.|\-/g).join('');
输出
-10000.50
现在是2017年,您也可以使用ES2016
var a = 'abc123.8<blah>';
console.log([...a].filter( e => isFinite(e)).join(''));
或者
console.log([...'abc123.8<blah>'].filter( e => isFinite(e)).join(''));
结果是
1238