加入收藏 | 设为首页 | 会员中心 | 我要投稿 惠州站长网 (https://www.0752zz.com.cn/)- 办公协同、云通信、物联设备、操作系统、高性能计算!
当前位置: 首页 > 建站 > 正文

Python正则表达式教程-常用文本处理技巧

发布时间:2019-10-31 00:04:52 所属栏目:建站 来源:数据大视界
导读:副标题#e# 介绍: 正则表达式用于识别模式(pattern)是否存在于给定的字符(字符串)序列中。它们有助于处理文本数据,这通常是涉及文本挖掘的数据科学项目的先决条件。您一定遇到过一些正则表达式的应用程序:它们在服务器端用于在注册过程中验证电子邮件地址

当特殊字符与搜索序列(字符串)尽可能匹配时,则称为"贪婪匹配"。这是正则表达式的正常行为,但有时不希望出现这种行为:

  1. pattern = "cookie" 
  2. sequence = "Cake and cookie" 
  3. heading = r'<h1>TITLE</h1>' 
  4. re.match(r'<.*>', heading).group() 
  5. '<h1>TITLE</h1>' 

该模式<.*>匹配整个字符串,直到第二次出现为止>。

但是,如果只想匹配第一个

标记,则可以使用贪婪的限定符*?,该限定符匹配的文字越少越好。

?在限定符之后添加使其以非贪婪或最小的方式执行匹配;也就是说,将匹配尽可能少的字符。跑步时<.*>,您只会与比赛<h1>。

  1. heading = r'<h1>TITLE</h1>' 
  2. re.match(r'<.*?>', heading).group() 
  3. '<h1>' 

re Python库

Re Python中的库提供了几个函数,使其值得掌握。您已经看过其中的一些,例如re.search(),re.match()。让我们详细检查一些有用的功能:

  1. search(pattern, string, flags=0) 

使用此功能,您可以扫描给定的字符串/序列,以查找正则表达式产生匹配项的第一个位置。如果找到,则返回相应的匹配对象;否则,None如果字符串中没有位置与模式匹配,则返回。请注意,这None与在字符串中的某个点找到零长度匹配不同。

  1. pattern = "cookie" 
  2. sequence = "Cake and cookie" 
  3. re.search(pattern, sequence).group() 
  4. 'cookie' 
  • match(pattern, string, flags=0)

(编辑:惠州站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

推荐文章
    热点阅读