博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
python库学习笔记(re库)
阅读量:5242 次
发布时间:2019-06-14

本文共 1142 字,大约阅读时间需要 3 分钟。

import re

  re模块中的函数:

  1.  re.compile(pattern[,flags]):根据包含正则表达式的字符串创建模式对象。

  2.  re.findall(pattern,string):列出所有匹配项。返回一个列表。

  3.  re.sarch(pattern,string[,flags]):只寻找出第一个匹配项。

  4.  re.match(pattern,string[,flags]):只在字符串的开头处匹配,只匹配第一个匹配项。

  5.  re.split(pattern,string[,maxsplit=0]:用于分割字符串。

  6.  re.sub(pat, repl, string[,count=0]):将字符串中所有pat的匹配项用repl替换。

  7.  re.escape(string):将字符串中所有特殊正则表达式字符进行转义。

  re匹配对象的方法:

通过re模块中的函数,当找到匹配项时,会返回一个MatchObject对象,可以这些对象应用一些方法

  1.  group():在正则中一对括号代表一组,组的序号取决于它左侧括号数量。组0就是整个模式

      例:‘There (was a (wee)(cooper)) who (lived in Fyfe)'

        包含下面这些组:

        0 There was a wee cooper who lived in Fyfe

        1 was a wee cooper

        2 wee

        3 cooper

        4 lived in Fyfe

      例2:

        >>>m = re.match(r"(..)+", "a1b2c3") 

        >>>m.group(1) 
        'c3' 

        这里只有一个括号,所以是一个group....这个group匹配了3次,一个group的每一次匹配覆盖上一次的匹配结果。

  2.  start([group]):返回给定组匹配项的开始索引

  3.  end([group]):返回给定组匹配项的结束索引加+1

  4.  span([group]):以元组的形式返回开始结束索引

  贪婪和非贪婪模式:

  *?,+?,??,{m,n}?    前面的*,+,?等都是贪婪匹配,也就是尽可能匹配,后面加?号使其变成惰性匹配

  正则表达式中的特殊字符:

  预定义字符集:

 

转载于:https://www.cnblogs.com/Alfred-ou/p/8997969.html

你可能感兴趣的文章
android一些细节问题
查看>>
KDESVN中commit时出现containing working copy admin area is missing错误提示
查看>>
利用AOP写2PC框架(二)
查看>>
【动态规划】skiing
查看>>
java定时器的使用(Timer)
查看>>
Android实现静默安装与卸载
查看>>
ef codefirst VS里修改数据表结构后更新到数据库
查看>>
boost 同步定时器
查看>>
[ROS] Chinese MOOC || Chapter-4.4 Action
查看>>
简单的数据库操作
查看>>
解决php -v查看到版本与phpinfo()版本不一致问题
查看>>
iOS-解决iOS8及以上设置applicationIconBadgeNumber报错的问题
查看>>
亡灵序曲-The Dawn
查看>>
Redmine
查看>>
帧的最小长度 CSMA/CD
查看>>
xib文件加载后设置frame无效问题
查看>>
编程算法 - 左旋转字符串 代码(C)
查看>>
IOS解析XML
查看>>
Python3多线程爬取meizitu的图片
查看>>
树状数组及其他特别简单的扩展
查看>>