python正则表达式知识点

import   re
str1="hello  world my11  phone1  number  is  123243331124" \
     "I am  18  years  old"
#re.findall目的就是匹配字符串当中所有满足条件的字符
result=re.findall(r"l",str1)#原样匹配,匹配字符原样,通常结合其他匹配使用,匹配l开头的单词
result=re.findall(r".",str1)#匹配所有非换行的字符,几个点就是几个字符
result=re.findall(r"\d\d",str1)#匹配所有字符串中的数字
result=re.findall(r"\d",str1)#大小写通常是相反的
result=re.findall(r"\D",str1)#匹配所有字符串当中的1非数字
result=re.findall(r"\w",str1)#\w匹配字符串当中的所有字母、数字、下划线(汉字属于字母)
result=re.findall(r"\W",str1)#\W匹配字符串中的所有非字母、非数字、非下划线
result=re.findall(r'[hello]',str1)#匹配括号当中的任意元素
result=re.findall(r"[a-zA-A0-9]",str1)#匹配当中的范围
result=re.findall(r"[^lo]",str1)#匹配除了括号当中元素之外的任意元素(括号当中的所有元素)
result=re.findall(r"[hello]",str1)#匹配括号中的任意元素
result=re.findall(r"he|ll|ph",str1)#匹配|两边的任意一边
#()组匹配  ()是组匹配
result=re.findall(r"\w\d",str1)#一个字母数字或下划线和一个数字
result=re.findall(r"\w(\d)",str1)#组匹配,会将非组内匹配,作为匹配的条件进行匹配
#如果是一个字母数字或下划线和一个数字,输出数字
#(?P<num>\d)\w(?P=num)是命名组匹配
result=re.findall(r"(?P<num>\d)\w(?P=num)",str1)#匹配一个和前面相同的数字,中间有一个
#字母数字或下划线
result=re.findall(r"\d*",str1)#*匹配0到多个,/d数字
result=re.findall(r"\d+",str1)#+匹配1到多个,/d数字
result=re.findall(r"\d{3}",str1)#匹配3个
result=re.findall(r"\d{3,5}",str1)#匹配3到5个1
h5="""
<img  src="1.jpg"><img  src="2.jpg"><img  src="3.jpg">"""

result=re.findall(r'<img  src="(.*)"',h5)#贪婪匹配
result=re.findall(r'<img src="(.*?)"',h5)#反贪婪
str2="hello  world  hi  man"
result=re.findall(r'^h',str2)#字符串的开头,如果第一个元素是选择的元素,则返回该元素
#否则返回空
result=re.findall(r'n$',str2)#字符串的结尾
#re.search和re.match都是匹配一次指定的字符,re.search是从字符内部开始匹配,
#而match是从开头匹配,也就是说,如果开头没有,search会向后接着匹配,match会返回None
result=re.search(r'n',str2)#从1字符串内部进行匹配,匹配成功一次1返回,没有返回None
# print(result)
# print(result.group())
# print(result.groups())
# #search搜查     match匹配
# result=re.match(r'h',str2)#从字符串开头进行匹配,匹配成功一次返回,没有返回None
# #match只匹配开头第一个
# print(result)
# print(result.group())
# print(result.groups())#按照组返回一个匹配结果的元组
str3="""
hello  WORLD  李易松
HI  man"""
result=re.findall(r".",str3,re.S)#.忽略换行进行匹配,通常用于完整的html源码
result=re.findall(r".",str3)#re.S将忽略的换行符重新匹配
result=re.findall(r'[a-z]',str3,re.I)#忽略大小写匹配
#re.I是大写的i将大小写都匹配出来
result=re.findall(r"\w",str3)#\w匹配字符串当中的所有字母、数字、下划线(汉字属于字母)
print(result)


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值