简单的javascript正则表达式来删除数字

jdb*_*org 6 javascript regex

我想要的只是从字符串中删除所有数字.

所以

var foo = "bar01";
alert(foo.replace(/\d/,''));
Run Code Online (Sandbox Code Playgroud)

这显然给了"bar1"因为我只指定了一个数字.那么为什么这不起作用:

var foo = "bar01";
alert(foo.replace(/\d*/,''));
Run Code Online (Sandbox Code Playgroud)

哪个给"bar01"

xan*_*tos 16

您必须添加该global选项

var foo = "bar01";
alert(foo.replace(/\d/g,''));
Run Code Online (Sandbox Code Playgroud)

显然,你甚至可以做类似的事情

var foo = "bar01";
alert(foo.replace(/\d+/g,''));
Run Code Online (Sandbox Code Playgroud)

但我不知道它是否会更快(最后速度的差异将非常小,除非你解析兆字节的文本)

如果你想测试http://jsperf.com/replace-digits,那么对于10位数和大文本的"blob"来说,第二个似乎更快.