正则表达式不会从字符串中删除非数字

0 javascript regex

我有以下字符串"项目编号:237728"我正在申请替换

str.replace(/[^0-9]/g,'');
Run Code Online (Sandbox Code Playgroud)

但字符串不会更改,不会删除非数字.任何想法为什么?谢谢

小智 10

您是在分配返回的值并使用它,例如str = str.replace(/[^0-9]/g,'');,还是期望原始字符串发生变化?

字符串函数不修改原始字符串,它们返回修改后的字符串.


unw*_*ind 5

这很有效,尝试粘贴到浏览器的位置框中:

javascript:alert("item number:237728".replace(/[^0-9]/g,""))
Run Code Online (Sandbox Code Playgroud)

正如Neal所说,我怀疑你的问题可能是字符串可变性.确保从中捕获返回值replace().