Chinese Identity Card Utilities
中国身份证号码解析校验工具
特点
- 15位升18位
- 号码有效性校验
- 解析号码相关信息(性别/年龄/出生年月日/省份/生肖等)
- 归属地信息查询
- 支持港澳台身份证号码校验
- 生成18位身份证号码
用法
Cargo.toml中添加依赖:
[]
= "0.1"
例子
号码信息
use Identity;
let id = new;
// 18位号码
id.number;
// 性别
id.gender;
// 当前年龄
id.age;
// 计算相对年龄
id.age_in_year;
// 出生年份
id.year;
// 出生月份
id.month;
// 出生日期
id.date;
// 出生年月日(格式:yyyy-mm-dd)
id.birth_date;
// 天干地支
id.chinese_era;
// 生肖
id.chinese_zodiac;
// 星座
id.constellation;
// 省份
id.province;
// 号码归属地
id.region;
// 判断号码是否有效
id.is_valid;
// 判断号码是否为空
id.is_empty;
// 号码长度
id.len;
港澳台身份证
use ;
// 香港身份证校验
validate;
// 澳门身份证校验
validate;
// 台湾身份证校验
validate;
gender;
region;
号码归属地
use region;
// 查询归属地名称
query;
实用方法
// 15位升18位
upgrade;
// 15/18位号码校验
validate;
// 生成假身份证号码
new_fake;
// 随机生成假身份证号码
rand_fake;
// 根据参数随机生成假身份证号码
let mut opts = default;
opts.set_region;
opts.set_gender;
opts.set_min_year;
opts.set_max_year;
rand_fake_with_opts;
// 返回年份对应的生肖
chinese_zodiac;
// 返回年份对应的天干地支
chinese_era;
// 返回月日对应的星座
constellation;
资料来源
部分算法代码参考于网络
License
MIT