Python正则表达式大全 1.检验手机号 要求:手机号码必须为11位数字,以1开头,第二位为1或5或8。 import re def verify_mobile(): mob = input('请输入手机号码:') ret = re.match(r'1[358]d{9}', mob) if ret: print('手机号码匹配正确') else: print('匹配错误') verify_mobile() 2.检验邮箱 import re def verify_email(): email = input('请输入邮箱:') ret = re.match(r'^[a-zA-Z0-9_-]+(.[a-zA-Z0-9_-]+){0,4}@[a-zA-Z0-9_-]+(.[a-zA-Z0-9_-]+){0,4}$', email) if ret: print('邮箱匹配正确') else: print('匹配错误') verify_email() 3.验证身份证 import re def verify_card(): card = input('请输入身份证:') ret = re.match(r'^([1-9]d{5}[12]d{3}(0[1-9]|1[0-2])(0[1-9]|1[0-9]|2[0-9]|3[0-1])d{3}(d|X|x))$', card) if ret: print('身份证匹配正确') else: print('匹配错误') verify_card() 4.检验年月日 import re def verify_date(): date = input('请输入年月日:') ret = re.match(r'^(d{4}-d{1,2}-d{1,2})$', date) if ret: print('日期匹配正确') else: print('匹配错误') verify_date() 5.验证数字表达式 匹配数字:^[0-9]*$ 匹配n位的数字:^d{n}$ 匹配零和非零开头的数字:^(0|[1-9][0-9]*)$ 匹配正数、负数、和小数:^(-|+)?d+(.d+)?$ 匹配非零的正整数:^[1-9]d*$ 或 ^([1-9][0-9]*){1,3}$ 或 ^+?[1-9][0-9]*$ 匹配非零的负整数:^-[1-9][]0-9″*$ 或 ^-[1-9]d*$ 匹配非负整数:^d+$ 或 ^[1-9]d*|0$ 匹配非正整数:^-[1-9]d*|0$ 或 ^((-d+)|(0+))$ 匹配浮点数:^(-?d+)(.d+)?$ 或 ^-?([1-9]d*.d*|0.d*[1-9]d*|0?.0+|0)$ 匹配正浮点数:^[1-9]d*.d*|0.d*[1-9]d*$ 匹配负浮点数:^-([1-9]d*.d*|0.d*[1-9]d*)$ 匹配非正浮点数:^((-d+(.d+)?)|(0+(.0+)?))$ 匹配非负浮点数:^d+(.d+)?$ 或 ^[1-9]d*.d*|0.d*[1-9]d*|0?.0+|0$ 6.验证字符表达式 匹配汉字:^[一-龥]{0,}$ 匹配英文和数字:^[A-Za-z0-9]+$ 或 ^[A-Za-z0-9]{4,40}$ 匹配大写英文字母组成的字符串:^[A-Z]+$ 匹配小写英文字母组成的字符串:^[a-z]+$ 匹配大小写英文组成的字符串:^[A-Za-z]+$ 匹配中文、英文、数字包括下划线:^[一-龥A-Za-z0-9_]+$ 禁止输入含有~的字符:[^~x22]+x |
|