本文主要介绍python字符串匹配的六种方法的详细说明。文章最后给大家讲解了Python正则表达式。有兴趣的朋友可以跟边肖学习一下。
1.re.match尝试从字符串的开头匹配一个模式,如果起始位置不成功,match()返回none。
进口re
line='此hdr-biz 123型号服务器456 '
pattern=r'123 '
matchObj=re.match( pattern,line)
2.re.search扫描整个字符串并返回第一个成功匹配的字符串。
进口re
line='此hdr-biz模型服务器'
pattern=r'hdr-biz '
m=搜索(模式,行)
3.Python的re模块提供re.sub来替换字符串中的匹配。
进口re
line=' this HDR-biz model args=server '
patt=r'args='
name=re.sub(patt,'',line)
4.compile函数用于编译正则表达式并生成正则表达式(模式)对象,match()和search()函数可以使用该对象。
进口re
pattern=re.compile(r'\d ')
5.查找字符串中与正则表达式匹配的所有子字符串,并返回一个列表。如果没有找到匹配,则返回一个空列表。
进口re
line=' this HDR-biz model args=server '
patt=r'server '
模式=重新编译(模式)
result=pattern.findall(line)
6.关于。Finder类似于findall,在一个字符串中找到正则表达式匹配的所有子字符串,并作为迭代器返回。
进口re
it=re.finditer(r'\d ',' 12a32bc43jf3 ')
对于其中的匹配:
print (match.group())
PS:Python字符串匹配及正则表达式说明
解析url地址正则表达式:
regexp=(r'^(?Pscheme[a-z][\w\\-\ ] )?(//)?'
r '(?(?Pusername\w):(?' Ppassword[\w\W] )@|)'
r '(?Pdomain[\w-](?\.[\w-] )*)(?(?Pport\d))?/?'
r '(?Ppath\/[\w\。\/-] )?(?Pquery\?[\w\。*!=@%;/-] )?'
r '(?Pfragment#[\w-])?$')
match=re.search(regexp,url.strip(),re。u)
如果不匹配:
引发ValueError(“不正确的url: {0}”。格式(url))
url_parts=match.groupdict()
URL=' 3359blog.csdn.net/weixin _ 40907382/文章/详情/79654372 '
print(URL _ parts):{ ' scheme ':' https ','用户名':无,'密码':无,'域':' blog.csdn.net ',' port ':无,'路径':/weixin _ 40907382/article
总结
以上是边肖介绍的六种Python字符串匹配方法的使用。希望对你有帮助。如果您有任何问题,请给我留言,边肖将及时回复您。非常感谢您对我们网站的支持!
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。