我是靠谱客的博主 文静咖啡,最近开发中收集的这篇文章主要介绍Python身份证正则匹配后进行MD5加密Python 身份证正则匹配后加密,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

Python 身份证正则匹配后加密

// 完整代码
#身份证md5加密
def _add111(matched)->str:
intStr = matched.group().replace("|","")
a = str( hashlib.md5(intStr.encode("utf8")).hexdigest())
b= '|' + intStr[0:14] +a
+ '|'
return b
idCard = r'([|]d{6}(18|19|20)?d{2}(0[1-9]|1[012])(0[1-9]|[12]d|3[01])d{3}(d|X|x)[|])'
f2 = re.sub(idCard,_add111,f2)

身份证正则匹配详解,我匹配的是 |331004199112130521|,左右带了一个符号,所以不需要的请去掉

 idCard = r'([|]d{6}(18|19|20)?d{2}(0[1-9]|1[012])(0[1-9]|[12]d|3[01])d{3}(d|X|x)[|])'

1、r’’ 表示’‘内的字段为原生,比如r’n’,n会作为分开的两个字母,而不是换行。常用于正则表达式。
2、[|], []表示一个集合,[|],表示匹配 | 字符。
3、d{6}, d表示数据,{6}表示6个,合起来就是6个数据,如331004
4、(18|19|20)?,代表18或者19或者20,身份证年份前两位,合起来33100419,?表示匹配一次或0次
5、d{2},加上上面的3310041991
6、(0[1-9]|1[012]),月份,01-09或者10-12
7、(0[1-9]|[12]d|3[01]),日期,01-09或者10-29或者30-31
8、d{3}(d|X|x),身份证末尾的3个数据和最后一个数据或X或x

f2 = re.sub(idCard,_add111,f2)

re.sub函数, 第一个参数代表要匹配的模式字符串,第二个参数是替换成什么字符,也可以用函数,第三个参数是被替换的字符
_add111,即函数

def _add111(matched)->str:
intStr = matched.group().replace("|","")
a = str( hashlib.md5(intStr.encode("utf8")).hexdigest())
b= '|' + intStr[0:14] +a
+ '|'
return b

将传入的身份证去掉|后,进行md5转码,然后重新加上| 返回。

最后

以上就是文静咖啡为你收集整理的Python身份证正则匹配后进行MD5加密Python 身份证正则匹配后加密的全部内容,希望文章能够帮你解决Python身份证正则匹配后进行MD5加密Python 身份证正则匹配后加密所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(44)

评论列表共有 0 条评论

立即
投稿
返回
顶部