mune
V2EX  ›  PHP

每个国家的护照号码的格式是不一样的,请问如何书写匹配不同国家护照号码的正则?

  •  
  •   mune · Oct 10, 2017 · 25339 views
    This topic created in 3173 days ago, the information mentioned may be changed or developed.

    比如, 美国、英国护照号码:9 位数字 加拿大护照:2 个字母加 6 个数字 法国护照:2 个数字加 2 个字母加 5 个数字 意大利护照:2 个字母加 7 个数字 西班牙护照:3 个字母加 6 个数字 德国护照:9 个字符,由 2-3 个数字与 6-7 个字母混排,头尾是字母。或者单纯为 9 个数字

    Supplement 1  ·  Oct 17, 2017
    感谢大家提供的思路和方案,已成功解决问题,在下不一一回复了,祝大家生活愉快,轻松工作!
    10 replies    2017-10-10 14:12:32 +08:00
    hantsy
        1
    hantsy  
       Oct 10, 2017
    应该有规律的,不然护照为什么其他国家都可以扫描识别。。。
    Patrick95
        2
    Patrick95  
       Oct 10, 2017
    这个没什么规律吧…
    unity0703
        3
    unity0703  
       Oct 10, 2017
    每个国家都写一个正则,一个一个匹配,匹配出来就终止不行吗,这样还可以判断是哪个国家的护照
    KaKaGoSki
        4
    KaKaGoSki  
       Oct 10, 2017
    先选一个下拉框再匹配正则不就可以了
    yulitian888
        5
    yulitian888  
       Oct 10, 2017   ❤️ 1
    歪楼,护照不带芯片的么,扫啊!
    580a388da131
        6
    580a388da131  
       Oct 10, 2017
    先选择国家 /地区呗
    如果是一堆不带国家的数据,貌似也没啥意义吧
    admin0113
        7
    admin0113  
       Oct 10, 2017
    luozic
        8
    luozic  
       Oct 10, 2017 via iPhone
    规则写数据库做白名单。
    MC
        9
    MC  
       Oct 10, 2017
    @yulitian888 中国的话,G 开头的老护照都没有芯片,现在很多老护照都还没到期,相信其他国家也会有类似问题
    shmilypeter
        10
    shmilypeter  
       Oct 10, 2017
    护照作为机读证件,作为一个国际旅行证件,遵循统一的标准,并且有相应的机读 API 等解决方案

    http://www.highprogrammer.com/alan/numbers/mrp.html
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   3440 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 100ms · UTC 00:06 · PVG 08:06 · LAX 17:06 · JFK 20:06
    ♥ Do have faith in what you're doing.