考虑一个非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和其他涉及浏览器和按键事件的解决方案都不适合。
使用.replace
正则表达式为的字符串方法\D
,这是与所有非数字匹配的速记字符类:
myString = myString.replace(/\D/g,'');
类似于以下内容:
yourString = yourString.replace ( /[^0-9]/g, '' );
如果您的脚本实现支持正则表达式,请使用正则表达式。就像是:
myString.replace(/[^0-9]/g, '');
如果您需要用它来保留浮点数,请使用此