提问人:user17273353 提问时间:12/24/2021 最后编辑:mplungjanuser17273353 更新时间:12/24/2021 访问量:90
使用模式验证客户端数据输入
Validating client-side data input using a pattern
问:
我目前正在做一个项目,可以通过网站将数据添加到数据库中。目前,我已经设法对其进行了配置,以便该表单接受标题,邮政编码,车辆注册号和ID号。
Javascript 验证对这些条目工作正常,但 ID 号除外。所有 ID 号都是特定格式(2 个数字后跟一个 .,后跟 4 个数字)。
我似乎无法弄清楚如何定义模式。
由于我的代码大小,我没有在这里发布完整的代码(除了这个 ID 验证之外,所有代码都在验证中),但我在下面提供了我试图想出的“if”语句的片段。
if (inputElement.id == "wid") {
pattern = /^[a-zA-Z0-9 ]*$/;
feedback = "Only 2 numbers followed by a . followed by 4 numbers are
permitted";
我知道这里的模式不正确,但我已经搜索了几个小时,试图找到一些易于解释的指南,但找不到任何似乎相关的内容。
任何想法将不胜感激。
谢谢
答:
0赞
Wessel van der Linden
12/24/2021
#1
您可以尝试类似 https://regex101.com/ 的东西来测试您的正则表达式,并查看它的解释。
我认为你的模式应该是这样的:.
第一部分 () 确保 id 以 2 位数字开头,然后是一个点(必须转义,否则它表示“每个字符”),然后是 4 位数字/^[0-9]{2}\.[0-9]{4}$/
[0-9]{2}
\.
[0-9]{4}
评论
0赞
tromgy
12/24/2021
我认为验证必须首先检查字符串的长度以确保它是 7,然后应用正则表达式。否则,像 12.3456foo 这样的东西也会匹配
0赞
user17273353
12/24/2021
谢谢 - 经过一些调整后,这对我有用!从未听说过正则表达式,非常有用的资源 - 再次感谢!
评论