【发布时间】:2013-09-27 14:52:32
【问题描述】:
我有一个文本区域,用户可以在其中输入美国邮政编码,用逗号或(逗号和空格)分隔。
可能是这样的 12345,45678,89654
以下正则表达式正在运行,正在删除不允许的字符:
$object.val($object.val().replace(/[^\d\, ]/g, ''));
我想增强它,以便
- 我总是应该在开头有 5 位数字
- 5位数字后应有逗号或逗号加空格
- 逗号或(逗号和空格)不应位于字符串的最后。结尾必须是 5 位数字。
这也需要解决复制粘贴问题。用户可以复制粘贴邮政编码的无效长度。
谢谢
【问题讨论】:
-
你有没有想过 jQuery maskedinput 插件?它对我很有用,而且我没有冲突。 digitalbush.com/projects/masked-input-plugin
-
您是否尝试过搜索可以帮助您完成此任务的可能答案?这里的那个怎么样 - stackoverflow.com/questions/160550/…
-
我建议不要裁剪输入文本,而是在它们无效时显示。
-
您忽略了新的 9 位数(首选)邮政编码:12345-5432。这是个好主意吗?
标签: javascript regex