香港--身份证(本国人)正则表达式

1. 香港永久居民身份证

参考http://www.ablmcc.edu.hk/~scy/home/javascript/idcard.htm
 

香港身份证号码: 身份证号码的结构,可以用XYabcdef(z)表示。「X」可能是「空格」或是一个英文字母,「Y」则必定是英文字母。「abcdef」代表一个六位数字,而「z」是作为检码之用,它的可能选择是0, 1, 2, ... , 9, A(代表10)。这些代号的背后,都可配上一个编码值。透过编码值,便可找出 9X+8Y+7a+6b+5c+4d+3e+2f+z 的总和。该总和特别之处,是必须被11整除。利用这特点,我们便能找出括号内的数字。 X或Y的编码值: 

格 58 I 18 R 27 A 10 J 19 S 28 B 11 K 20 T 29 C 12 L 21 U 30 D 13 M 22 V 31 E 14 N 23 W 32 F 15 O 24 X 33 G 16 P 25 Y 34 H 17 Q 26 Z 35

 

 X354670(?) 9(58)+8(33)+7(3)+6(5)+5(4)+4(6)+3(7)+2(0)+z=902+z 被11整除,所以 。 即X354670(0)是正确的香港身分证号码

 

출처: <http://www.devexception.com/asp/43305.htm


2. 香港居民身份证


综合

RegEx

^((\s?[A-Za-z])|([A-Za-z]{2}))\d{6}((\([0-9aA]\))|([0-9aA]))$

Example

X354670(0)
b354670(a)
g354670a




整理起来不容易

有错误的话麻烦告诉我 

整理起来不容易

有错误的话麻烦告诉我 
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值