Python的re模块学习

import re
ret=re.findall("alex","hdasoialexhosfo")
print(ret)
#.通配符
re1=re.findall("..c","abcc")
print(re1)
#^以什么开头
ret2=re.findall("^ad...c","adihoc;l")
print(ret2)
#$以什么结尾
re3=re.findall("......sd$","asdfghsd")
print(re3)
#*重复出现次数[0,+00]
ret2=re.findall("a*b","fhoahfaaaaabyuom;l")
print(ret2)
#+出现[1,+00]
re4=re.findall("sd+.*","dsadsdsdsdsdsdsdsdwert")
print(re4)
#?匹配前一个字符出现一次或者0次
re5=re.findall("a?b","asdsdbafjdfkskbaupopob")
print(re5)
#{n,m}匹配出现次数(n,m)次数
re6=re.findall(".*s{2,}.*","asatsstgiuhj;m")
print(re6)
#[]匹配[]中列举的字符
re7=re.findall("[1-9a-zA-Z]","23effKK")
print(re7)
#^在[]中表示取反,如[^t]表示取不是t的单字符,[^4,5]表示不是4或5的字符
re8=re.findall("[^t,d]","duysdgwf")
print(re8)
#\d匹配数字字符,相当于[0,9],\D匹配非数字字符,相当于[^0-9]
#\s匹配空白字符,\S匹配非空白字符
#\w匹配字母,想当于[0-9,a-z,A-Z],\W匹配非字母字符相当于[^0-9,a-z,A-Z]
#\b匹配特殊字符边界,指单词与空格间
re9=re.findall(r"i\b","i like i&dsaf")
print(re9)
#re.search("",""),匹配第一个符合条件的字符串,返回是对象类型,group()方法返回内容
print(re.search('gh',"ghjjjsddgh").group())
re10=re.findall('\\bv',"hjdshva v")#两个\\在Python解释器中运行解释后就是一个\,此处可以用r转义
print(re.findall(r"\bs","$sfhuh"))
print(re10)
#()分组匹配?
ret11=re.search('(?P<id>\d+)/(?P<name>\w+)',"huh355/ede")
print(ret11.group())
print(ret11.group('id'))
#方法findall()返回所有匹配的,返回类型列表
#方法search()返回匹配到的第一个对象,只匹配一次
#方法match()只从字符串开始匹配,注意只从开始匹配,也返回匹配到的第一个对象
ret12=re.match("sdf","sdfsfasfasdf")#如果开头没有sdf,则返回空对象
print(ret12.group())
#split()分割字符串
re13=re.split("[j,s]","asjhksljkl;sk")
print(re13)
#sub()替换字符串
re14=re.sub('sd',"gh","sdjkjsdklksduiosdsd",count=3)
print(re14)
#pattern编译方法
ret15=re.compile('\d{3}\w{2}:.*')
print(ret15.findall("fsafa123gh:hfjkafkl"))

对应输出:

['alex']
['abc']
['adihoc']
['asdfghsd']
['aaaaab']
['sdsdsdsdsdsdsdwert']
['b', 'b', 'b']
['asatsstgiuhj;m']
['2', '3', 'e', 'f', 'f', 'K', 'K']
['u', 'y', 's', 'g', 'w', 'f']
['i', 'i']
gh
['s']
['v']
355/ede
355
sdf
['a', '', 'hk', 'l', 'kl;', 'k']
ghjkjghklkghuiosdsd
['123gh:hfjkafkl']

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值