什么是正则表达式:
正则表达式百度百科
import re
# 1. 验证手机号码:手机号码的规则是以1开头,第二位可以是34587,后面那9位就可以随意了
# text = "15895775470"
# ret = re.match('1[34587]\d{9}',text)
# print(ret.group())
# 2. 验证邮箱:邮箱的规则是邮箱名称是用数字、英文字符、下划线组成的,然后是@符号,后面就是域名了
# text = "1530385801139866@126.cn"
# ret = re.match('\w+@[a-z0-9]+\.[a-z]+',text)
# print(ret.group())
# 3. 验证URL:URL的规则是前面是http或者https或者是ftp然后再加上一个冒号,再加上一个斜杠,
# # 再后面就是可以出现任意非空白字符了。
# text = "https://baike.baidu.com/item/Python/407313?fr=aladdin"
# ret = re.match('(http|https|ftp)://\S+',text)
# print(ret.group())
# 4. 验证身份证:身份证的规则是,总共有18位,前面17位都是数字,后面一位可以是数字,
# 也可以是小写的x,也可以是大写的X。
# text = '87961989378638821X'
# ret = re.match(r'\d{17}[\dxX]',text)
# print(ret.group())
# ^:以...开头(判断字符串是否以指定的字符串开头)
# text = "hello world"
# result = re.search("^world",text)
# print(result.group())
# $“:以...结尾(判断字符串是否以指定的字符串结尾)
# text = "hello world"
# result = re.search("world$",text)
# print(result.group())
# text = ""
# result = re.search("^$",text)
# print(result.group())
# 贪婪和非贪婪
# text = "13232"
# result = re.search("\d+?",text)
# print(result.group())
# 案例1:提取html标签名称
# text = "<h1>这是标题</h1>"
# result = re.search("<.+>",text)
# print(result.group())
# 案例2:验证一个字符是不是0-100之间的数字
# 0,1,99,100
# 01
# text = "1000"
# result = re.match("0$|[1-9]\d?$|100$",text)
# print(result.group())
# python中的转义字符
# raw
# text = r"hello\nworld"
# print(text)
# 正则表达式中的转义字符
# text = "shoes price is 90$, shirt price is 50$"
# result = re.findall("\d+\$+",text)
# print(result)
# 原生字符串和正则表达式
# 正则表达式的字符串解析规则:
# 1. 先把这个字符串放在python语言层面进行解析
# 2. 把python语言层面解析的结果再放到正则表达式层面进行解析
# text = "\cba c"
# # result = re.match("\\\\c",text) # \\\\c = (python语言层面)> \\c =(正则表达式层面)> \c
# result = re.match(r"\\c",text) # \\c = (正则表达式层面) > \c
# print(result.group())
版权声明:本文为weixin_44851971原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。