Javascript 用于逗号和空格的正则表达式
我有一个文本区域,用户可以在其中输入我们的邮政编码,用逗号或(逗号和空格)分隔 可能是 123456789654 以下正则表达式正在工作,正在删除不允许的字符:Javascript 用于逗号和空格的正则表达式,javascript,regex,Javascript,Regex,我有一个文本区域,用户可以在其中输入我们的邮政编码,用逗号或(逗号和空格)分隔 可能是 123456789654 以下正则表达式正在工作,正在删除不允许的字符: $object.val($object.val().replace(/[^\d\, ]/g, '')); 我想加强它,以便 我应该在开头有5个数字 在5位数字之后,应该有一个逗号或逗号和空格 逗号或(逗号和空格)不应位于字符串的末尾。结尾必须是5位数字 这也需要解决复制粘贴问题。用户可以复制粘贴邮政编码的无效长度 谢谢使用这个正则表达
$object.val($object.val().replace(/[^\d\, ]/g, ''));
我想加强它,以便
^\d{5}(,?\d{5})*$
它在开头指定了5位数字:^\d{5}
以及任意数量的其他逗号、空格和5位数字组合:(,?\d{5})*
您可以使用:
var s='12345,45678, 12345';
var m = s.match(/^(?:\d{5},\s?)*\d{5}$/);
函数验证(txt){
txt.value=txt.value.replace(/[^,0-9]+/g',);
}
您考虑过jQuery maskedinput插件吗?这对我来说很好,我没有冲突。你有没有尝试过寻找可能帮助你实现这一目标的答案?这里的一个怎么样?我建议不要裁剪输入文本,而是在它们无效时显示它们。您忽略了新的9位(首选)邮政编码:12345-5432。这是个好主意吗?我需要在用户输入数字时限制不允许的字符。这适用于模糊或提交验证。未收到您的评论。这将不允许任何不允许的字符。之后,一个空格,然后是0-9
<html>
<head>
<title></title>
<script type="text/javascript">
function Validate(txt) {
txt.value = txt.value.replace(/[^, 0-9]+/g, '');
}
</script>
</head>
<body>
<form>
<input type = "text" id ="txt" onkeyup = "Validate(this)" />
</form>
</body>
</html>