# 购买限制
> ###格式为 限制说明####限制正则 如匹配身份证出生日期为19900917的人。则:身份证生日必须是1990年9月17号生日的,用于周年庆####/^\d{6}19900917\d{3}([0-9]|X)$/
限制正则采用php标准的正则表达式,不可添加修饰符。望知悉。
## ***提示:*** 这种限制非常影响性能,请注意避免滥用。
### 基础例子:
* 基础的身份证校验规则如下:注意这种月份为0230的错误匹配项也会匹配。
* 基础例子:
`/^\d{6}(19\d{2}|[2-4]\d{3})((0[1-9])|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}([0-9]|X)$/` .
此规则最仅1900年到4999年的身份证。
* 如果不做年份校验
`/^\d{10}((0[1-9])|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}([0-9]|X)$/`;
* 匹配开头3位为411的身份证号
`/^411\d{3}(19\d{2}|[2-4]\d{3})((0[1-9])|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}([0-9]|X)$/`
* 匹配开头3位为411和421和321的身份证号
`/^(411|421|321)\d{3}(19\d{2}|[2-4]\d{3})((0[1-9])|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}([0-9]|X)$/`
* 只有九省市可购买,福建,江西,湖南,广东,广西,海南,四川,贵州,云南,香港,澳门
`/^(35|36|43|44|45|46|51|52|53|81|82)\d{4}(19\d{2}|[2-4]\d{3})((0[1-9])|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}([0-9]|X)$/`
* 匹配身份证生日为1993年10月17号的身份证号
`/^\d{6}19931017\d{3}([0-9]|X)$/`
* 限制南通市民(3206开头)的身份证号购买。即匹配所有非3206开头的身份证此门票仅限非南通市民购买
`/^((?!^3206).)*$/`,这会匹配所有3206开头的数字串,但没有校验身份证位数和身份证年月日信息。需注意。
`/^(320[0-5,7-9]|32[1-9]\d|3[0,1,3-9]\d{2}|[0-2,4-9]\d{3})\d{10}\d{3}([0-9]|X)$/` ,这会匹配所有3206开头的18位身份证数字串。如果不校验才能。
### 身份证前两位说明
华北地区:北京市|11,天津市|12,河北省|13,山西省|14,内蒙古自治区|15,
东北地区: 辽宁省|21,吉林省|22,黑龙江省|23,
华东地区: 上海市|31,江苏省|32,浙江省|33,安徽省|34,福建省|35,江西省|36,山东省|37,
华中地区: 河南省|41,湖北省|42,湖南省|43,
华南地区:广东省|44,广西壮族自治区|45,海南省|46,
西南地区: 四川省|51,贵州省|52,云南省|53,西藏自治区|54,重庆市|50,
西北地区: 陕西省|61,甘肃省|62,青海省|63,宁夏回族自治区|64,新疆维吾尔自治区|65,
特别地区:台湾地区(886)|71,香港特别行政区(852)|81,澳门特别行政区(853)|82
* * * * *
###详细说明:
以此为例讲述:
* `/^\d{6}(19\d{2}|[2-4]\d{3})((0[1-9])|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}([0-9]|X)$/`
* 基础知识:
* `/^` 开头必须是 `$/` 结尾
* `()` 代表的是优先级,就是括号内看成一个整体 ,`[]` 就是匹配括号内的其中一个,`{}`就是匹配几次
* `\d ` 代表一位数字 `\d{6}` 表示6位数字填充000000~999999
* `[1|2]` 1或者2
* `(19\d{2}|[2-4]\d{3})` 表示1900~1999或者2000~4999
* `((0[1-9])|(1[0-2]))(([0|1|2]\d)|3[0-1])` 匹配月份日期。月份01到12,日期01到31,单独使用时需注意可能会出现0231这种。如果和身份证识别放在一起就不算事儿了。
* `\d{3}([0-9]|X)` 这里匹配的是身份证后四位。最后一位能为大写的X
> `/^(320[0-5,7-9]|32[1-9]\d|3[0,1,3-9]\d{2}|[0-2,4-9]\d{3})\d{2}((0[1-9])|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}([0-9]|X)$/` ,这会匹配所有3206开头的18位身份证数字串。如果不校验才能。规则限制从准确到模糊。先限制准确的3206再一步步不限制。不过执行效率并不高。
1. `(320[0-5,7-9]|32[1-9]\d|3[0,1,3-9]\d{2}|[0-2,4-9]\d{3})`;
* `320[0-5,7-9]` 此项匹配除3206的所有320开头的四位数字,继续扩大选取的范围。把除了321到329开头的都匹配进来
* `32[1-9]\d`, 匹配321到329,320开头的规则已经设置了,所以这里不在匹配320了,\d表示一位数字
* `3[0,1,3-9]\d{2}`, 匹配除32的所有3开头的数字,\d{2}表示两位数字
* `[0-2,4-9]\d{3}`, 因为3开头的规则已经设置过了,这里设置所有非3开头的规则。
2. `((0[1-9])|(1[0-2]))(([0|1|2]\d)|3[0-1])` 匹配月份日期。月份01到12,日期01到31,单独使用时需注意可能会出现0231这种。如果和身份证识别放在一起就不算事儿了。
3. `\d{3}([0-9]|X)` 这里匹配的是身份证后四位。最后一位能为大写的X
- 说明
- 数据定时下发接口
- 闸机验票接口
- 供应商设置
- 产品说明
- 糯米记录
- 产品上线,购买限制
- 联合票务-微店的说明
- 供应商系统对接说明
- 乐乐库对接操作说明
- 天时同程对接操作说明
- 票付通对接操作说明
- 智游宝对接操作说明
- 同程旅游对接操作说明
- 智慧生活对接操作说明
- 对接笛风假期(途牛分销)文档
- 天下网商对接说明
- 驴妈妈分销平台操作说明
- 拉取产品列表对接产品上线说明
- 分销商系统对接说明
- 美团,糯米,驴妈妈,途牛等网站分销联合产品说明
- 同程分销联合门票
- 票付通分销联合门票
- 人工退款操作说明
- 下单错误提示说明
- 闸机功能
- 心跳接口
- 验票接口
- 命令码接口
- 购票接口
- 接口规范
- 联合K5B微信平台对接说明
- 一票多张双人票处理