为什么我的正则表达式让我写","(逗号)?

Wil*_*o P 2 javascript regex

我上面有一个JavaScript正则表达式函数代码:

function AcceptDigits(objtextbox) {
    var exp = /[^\d{1,3}]/g;
    objtextbox.value = objtextbox.value.replace(exp, '');
}; 
Run Code Online (Sandbox Code Playgroud)

总是我写一个任何特殊字符函数删除此字符为例:

我写了45656654 @并且这个函数像45656654一样清理"@".

我的问题

问题是,当我写任何","(逗号)函数不起作用时,我尝试".-()/&%$#"并且函数工作.

有什么帮助来捕捉和删除逗号?

Tim*_*ker 9

/[^\d{1,3}]/g
Run Code Online (Sandbox Code Playgroud)

意思是"单个字符,既不是数字,也不是大括号,也不是逗号".

你可能意味着

/\D{1,3}/g
Run Code Online (Sandbox Code Playgroud)

但实际上,如果您想使用该正则表达式替换非数字,请使用

/\D+/g
Run Code Online (Sandbox Code Playgroud)