【问题标题】:Validating Vehicle Numbers of Indian Vehicle number with Jquery Validation使用 Jquery Validation 验证印度车辆编号的车辆编号
【发布时间】:2017-05-20 19:43:50
【问题描述】:

我想在我的 PHP 应用程序中的 jquery 验证器插件 https://jqueryvalidation.org/ 中验证印度车号。

如何使用regex 添加其他方法来验证这些数字格式?

[AA]-[00|0]-[BB|B]-[0000|000|00|0] Ex: DL-01-X-1234, DL-01-XL-123 // 这些是新的车号格式

[AAA]-[0000|000|00|0] 例如:CNX-1234,CNX-123 // 这是旧的数字格式

我想在同一个additional method 中验证这两种格式。

到目前为止我所做的是

(?:([A-Z]{2,3})-(?:[0-9]{4})-(?:[A-Z]{1,2})-(?:[0-9]{1,4}))

这仅验证 [AA]-[00|0]-[BB|B]-[0000|000|00|0] bot not [AAA]-[0000|000|00|0]

这个问题以前可能被别人问过,但我认为我的完全不同:)

【问题讨论】:

    标签: php jquery regex validation


    【解决方案1】:

    这个正则表达式怎么样:

    ([A-Z]{2,3})-(\d{2,4})|([A-Z]{2,3})-\d{2}-[A-Z]{1,2}-\d{1,4}

    `([A-Z]{2,3})-(\d{2,4})` matches second type of numbers as mentioned in OP
    `([A-Z]{2,3})-\d{2}-[A-Z]{1,2}-\d{1,4}` matches second type of numbers as mentioned in OP
    

    演示https://regex101.com/r/DE1zmf/2

    编辑

    根据您的评论,我意识到正则表达式可以简化为 ^[A-Za-z]{2,3}(-\d{2}(-[A-Za-z]{1,2})?)?-\d{3,4}$ 这符合您的所有 3 个条件

    演示https://regex101.com/r/DE1zmf/8

    【讨论】:

    • 谢谢。添加了对DL-01-1234 的验证,也使用此((([A-Za-z]){3}-\d{1,4})|([A-Za-z]{2}-\d{2}-[A-Za-z]{1,2}-\d{1,4})|([A-Za-z]{2}-\d{2}-\d{1,4}))
    • 感谢您简化的正则表达式。这个新的正则表达式的一个问题是DL-01 也返回valid,因为这不是一个有效的车辆号码。它应该像DLL-01DL-01-122DL-01-D-123 等,
    • 仍然 DL-01 返回有效但不是
    • @ABCatella 与^[A-Za-z]{2,3}(-\d{2}(-[A-Za-z]{1,2})?)?-\d{2,4}$一起使用
    猜你喜欢
    • 2021-07-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-08-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-02-16
    相关资源
    最近更新 更多