为什么我的javascript .replace()不工作?

Har*_*ldo 5 javascript

我想删除除0-9 az AZ之外的任何字符....

var file_name = file.name;
file_name = file_name.replace(/[^A-Z0-9\._\-]/i, '');
Run Code Online (Sandbox Code Playgroud)

任何明显的原因上述不起作用?

jwu*_*ler 13

您需要在正则表达式上指定global-flag.否则,只会替换第一个匹配项:

file_name = file_name.replace(/[^A-Z0-9\._\-]/gi, '');
Run Code Online (Sandbox Code Playgroud)