注意pattern字符串前要加r    原始字符串

元字符
.                匹配除换行的任意字符
^            匹配开头
$            匹配结尾
表示重复
        星号      匹配0-多次
        +           匹配1到多次 
        ?            匹配0次或1次
        {m,n}            匹配m次至n次       
        后面跟一个?表示非贪婪匹配
[ab]            取一个(一般元字符在其中是普通字符)
        []中的元字符
            -在其中表示至
            ^表示非
            \d类似的
()        表示分组
|        分组内的或
\
    1 后面跟元字符转义
    2 后面跟普通字符实现特殊功能
            \d            [0-9]
            \D            [^0-9]
            \s            任何空白字符 [\t\n\r\f\v]
            \S              任意非空白字符
            \w            [0-9a-zA-Z_]
            \W            [^0-9a-zA-Z_]
            \b            匹配一个单词边界,指单词到空格处
            \B            匹配非单词边界
    3 引用序号对应的字组,相当于把小括号的内容放倒此处

函数
re.findall(pattern, string)            找到之后返回符合组的列表,组开头有?:则返回整个
re.search(pattern, string)                              只找到一个.返回一个match对象 .group()返回字符串        
re.match(pattern, string)                            只在开头匹配,返回一个match对象.group()返回字符串
re.compile(pattern)                    多次使用一个正则时,有必要生成一个对象
re.finditer(pattern, string)                    返回一个可迭代对象,每个元素是match对象
re.sub(pattern, repl, string, count=0)            替换count个,0为所有
re.subn(pattern, repl, string)            功能同上,返回一个元组(替换完的字符串,替换次数)
re.split(pattern, string)
以上函数都有参数,编译标识 flags
re.I            匹配对大小写不敏感
re.S            使.包含换行在内的所有字符

match对象的方法
group()             返回匹配到的字符串
start()               返回匹配到的起始位置
end()                   返回匹配到的结束位置
span()                返回一个元组,(起始偏移,结束偏移)
group(数字)        返回第几个组

python正则小结的更多相关文章

  1. 第11.27节 Python正则小结:正则静,静则明,明则虚,虚则无为而无不为也

    正则表达式的章节到此就结束了,老猿现在觉得对我们这些身具程序猿基因特色的人来说,正则表达式应该是蛮可口的开胃小菜. 在写标题时,本来想写"正则表达式小结",后来想了想,百度了一下, ...

  2. Python正则式的基本用法

    Python正则式的基本用法 1.1基本规则 1.2重复 1.2.1最小匹配与精确匹配 1.3前向界定与后向界定 1.4组的基本知识 2.re模块的基本函数 2.1使用compile加速 2.2 ma ...

  3. Python 学习小结

    python 学习小结 python 简明教程 1.python 文件 #!/etc/bin/python #coding=utf-8 2.main()函数 if __name__ == '__mai ...

  4. python 正则,常用正则表达式大全

    Nginx访问日志匹配 re.compile #re.compile 规则解释,改规则必须从前面开始匹配一个一个写到后面,前面一个修改后面全部错误.特殊标准结束为符号为空或者双引号:  改符号开始 从 ...

  5. python 正则使用笔记

    python正则使用笔记 def remove_br(content): """去除两边换行符""" content = content.r ...

  6. Python正则处理多行日志一例

    正则表达式基础知识请参阅<正则表达式基础知识>,本文使用正则表达式来匹配多行日志并从中解析出相应的信息. 假设现在有这样的SQL日志: SELECT * FROM open_app WHE ...

  7. Python正则匹配字母大小写不敏感在读xml中的应用

    需要解决的问题:要匹配字符串,字符串中字母的大小写不确定,如何匹配? 问题出现之前是使用字符串比较的方式,比如要匹配'abc',则用语句: if s == 'abc':#s为需要匹配的字符串 prin ...

  8. Python正则替换字符串函数re.sub用法示例(1)

    本文实例讲述了Python正则替换字符串函数re.sub用法.分享给大家供大家参考,具体如下: python re.sub属于python正则的标准库,主要是的功能是用正则匹配要替换的字符串然后把它替 ...

  9. Python正则处理多行日志一例(可配置化)

    正则表达式基础知识请参阅<正则表达式基础知识>,本文使用正则表达式来匹配多行日志并从中解析出相应的信息. 假设现在有这样的SQL日志: SELECT * FROM open_app WHE ...

随机推荐

  1. httpSession和Cookie

    1.session在何时被创建一个常见的误解是以为session在有客户端访问时就被创建,然而事实是直到某server端程序调用 HttpServletRequest.getSession(true) ...

  2. Thread线程类

    设置线程名 查看线程名是很简单的,调用Thread.currentThread().getName()即可. public class MyThreadDemo { public static voi ...

  3. [scrapy-redis] install and configure scrapy-redis on CentOS 7 (1)

    0. 安装依赖 yum install -y zlib zlib-devel openssl openssl-devel bzip2 bzip2-devel sqlite-devel gcc wget ...

  4. Docker 网易镜像仓库使用

    Docker 网易镜像仓库使用: 网易账号注册: https://id.163yun.com/register?h=fc&referrer=https://console.163yun.com ...

  5. 分布式系统的延时和故障容错之Spring Cloud Hystrix

    本示例主要介绍 Spring Cloud 系列中的 Eureka,如何使用Hystrix熔断器容错保护我们的应用程序. 在微服务架构中,系统被拆分成很多个服务单元,各个服务单元的应用通过 HTTP 相 ...

  6. 富文编辑器和bs4简单实用

    目录 使用方法 官方网址 图片上传下载实例 菜单栏功能筛选 bs4 导入 提取标签内的文本内容 目录 使用方法 直接给输入框绑定事件即可,注意引入js方式有点不一样,多加编码方式 <script ...

  7. .net Core 发布服务

    .net core 发布服务 准备好的文件可以通过下面的几个命令进行操作 1.创建Service sc create "服务名" binPath= "文件路径+文件名&q ...

  8. 公共DNS性能大比拼

    ​ 今天中午,访问Gitee突然访问不进去,然后收到红薯通知:阿里云停止了 Gitee.com 的域名解析. ​ ​ 码云官方也随后给出解决办法 没有任何提示,没有任何提前通知,阿里云停止了 Gite ...

  9. App上下左右滑动封装

    #coding=utf-8 from appium import webdriver from time import sleep caps = { "platformName": ...

  10. Fiddle弱网测试

    1.打开Fiddler,Rules->Performance->勾选 Simulate Modem Speeds,勾选之后访问网站会发现网络慢了很多: 接下来给大家解释一下这些个都是什么意 ...