我使用这种正则表达式电话验证
但是当任何人在输入中输入任何特殊字符*-/()-_
时......(+
除外)我想用“”(无)替换这些字符。
我怎么能这样做?
var phone = /^\+(90)[2-5]{1}[0-9]{9}$/;
答案 0 :(得分:23)
这将删除给定字符串中的所有非数字字符:
myString = myString.replace(/\D/g,"");
\D
匹配任何不是数字的东西; \d
匹配一个数字。
误读了这个问题。要删除除+
以外的所有非数字字符,请执行:
myString = myString.replace(/[^\d\+]/g,"");
答案 1 :(得分:2)
var input = document.getElementById('phone');
input.onkeypress = function(){
input.value = input.value.replace(/[^0-9+]/g, '');
}