一:学习内容

  • re.match函数
  • re.search函数
  • re.findall函数

二:re.match函数

需要导入包:import re

1.格式:match(pattern,string,flags = 0)

2.参数

pattern:匹配的正则表达式
string:要匹配的字符串
flags:标识位,用于控制正则表达式的匹配方式,它的值有:
           re.I  忽略大小写
           re.L  做本地化识别
           re.M  多行匹配,影响^和$
           re.S  使.匹配包括换行符在内的所有字符
           re.U  根据Unicode字符集解析字符,影响\w \W \b \B
           re.X  使我们以更灵活的格式理解正则表达式

3.功能:尝试从字符串的起始位置匹配一个模式,如果不是起始位置匹配成功的话,返回None

4.举例:

#扫描整个字符串,返回从起始位置成功的匹配
print(re.match("www","www.baidu.com"))  #匹配正确
print(re.match("www","ww.baidu.com"))   #匹配不到返回None
print(re.match("www","baidu.www.com"))  #匹配不到返回None,从起始位置就要能匹配上
print(re.match("www","wwW.baidu.com"))  #匹配不到,大写的W
print(re.match("www","wwW.baidu.com",flags=re.I))  #匹配正确,因为忽略大小写了

print(re.match("www","www.baidu.com").span())  #匹配正确,返回匹配的位置

三:re.search函数

需要导入包:import re

1.格式:search(pattern,string,flags = 0)

2.参数:
pattern:匹配的正则表达式
string:要匹配的字符串
flags:标识位,用于控制正则表达式的匹配方式,它的值有:
           re.I  忽略大小写
           re.L  做本地化识别
           re.M  多行匹配,影响^和$
           re.S  使.匹配包括换行符在内的所有字符
           re.U  根据Unicode字符集解析字符,影响\w \W \b \B
           re.X  使我们以更灵活的格式理解正则表达式

3.功能:扫描整个字符串,并返回第一个成功的匹配

4.举例:

print(re.search("tester","she is tester!tester is a good girl!"))

四:re.findall函数

需要导入包:import re

1.格式:findall(pattern,string,flags = 0)

2.参数:
pattern:匹配的正则表达式
string:要匹配的字符串
flags:标识位,用于控制正则表达式的匹配方式,它的值有:
           re.I  忽略大小写
           re.L  做本地化识别
           re.M  多行匹配,影响^和$
           re.S  使.匹配包括换行符在内的所有字符
           re.U  根据Unicode字符集解析字符,影响\w \W \b \B
           re.X  使我们以更灵活的格式理解正则表达式

3.功能:扫描整个字符串,并返回所有匹配成功的数据,返回一个列表

4.举例:

print(re.findall("tester","she is tester!Tester is a good girl!",flags=re.I))

python3笔记二十二:正则表达式之函数的更多相关文章

  1. python3.4学习笔记(二十二) python 在字符串里面插入指定分割符,将list中的字符转为数字

    python3.4学习笔记(二十二) python 在字符串里面插入指定分割符,将list中的字符转为数字在字符串里面插入指定分割符的方法,先把字符串变成list然后用join方法变成字符串str=' ...

  2. VSTO 学习笔记(十二)自定义公式与Ribbon

    原文:VSTO 学习笔记(十二)自定义公式与Ribbon 这几天工作中在开发一个Excel插件,包含自定义公式,根据条件从数据库中查询结果.这次我们来做一个简单的测试,达到类似的目的. 即在Excel ...

  3. 从零开始学习PYTHON3讲义(十二)画一颗心送给你

    (内容需要,本讲使用了大量在线公式,如果因为转帖网站不支持公式无法显示的情况,欢迎访问原始博客.) <从零开始PYTHON3>第十二讲 上一节课我们主要讲解了数值计算和符号计算.数值计算的 ...

  4. 深度学习课程笔记(十二) Matrix Capsule

    深度学习课程笔记(十二) Matrix Capsule with EM Routing  2018-02-02  21:21:09  Paper: https://openreview.net/pdf ...

  5. OllyDbg 使用笔记 (十二)

    OllyDbg 使用笔记 (十二) 參考 书:<加密与解密> 视频:小甲鱼 解密系列 视频 演示样例程序下载地址:http://pan.baidu.com/s/1eQiV6aI 安装好程序 ...

  6. Android群英传笔记——第十二章:Android5.X 新特性详解,Material Design UI的新体验

    Android群英传笔记--第十二章:Android5.X 新特性详解,Material Design UI的新体验 第十一章为什么不写,因为我很早之前就已经写过了,有需要的可以去看 Android高 ...

  7. (C/C++学习笔记) 二十二. 标准模板库

    二十二. 标准模板库 ● STL基本介绍 标准模板库(STL, standard template library): C++提供的大量的函数模板(通用算法)和类模板. ※ 为什么我们一般不需要自己写 ...

  8. 汇编入门学习笔记 (十二)—— int指令、port

    疯狂的暑假学习之  汇编入门学习笔记 (十二)--  int指令.port 參考: <汇编语言> 王爽 第13.14章 一.int指令 1. int指令引发的中断 int n指令,相当于引 ...

  9. 学习笔记:CentOS7学习之二十二: 结构化命令case和for、while循环

    目录 学习笔记:CentOS7学习之二十二: 结构化命令case和for.while循环 22.1 流程控制语句:case 22.2 循环语句 22.1.2 for-do-done 22.3 whil ...

  10. 备忘录模式 Memento 快照模式 标记Token模式 行为型 设计模式(二十二)

    备忘录模式 Memento   沿着脚印,走过你来时的路,回到原点.     苦海翻起爱恨   在世间难逃避命运   相亲竟不可接近   或我应该相信是缘份   一首<一生所爱>触动了多少 ...

随机推荐

  1. Const指针 、 指向const的指针 、引用、指针

    1. const指针和 指向const的指针 指向const的指针: 不允许通过指针来改变其指向的const值 const double *cptr *cptr = 42;  // error! 指针 ...

  2. [Scrapy-6] XPath使用的一个坑

    先上代码: import scrapy from scrapy.selector import Selector class QuoteSpider(scrapy.Spider): name = &q ...

  3. Qt5配置winpCap

    在网上查了很多资料,搞了差不多一天总算解决Qt5使用winPcap配置的问题了!记录一下 以便后续忘记 1.下载winpcap4.1.3,百度即可搜索到 2.下载winpCap开发者工具包http:/ ...

  4. 解决办法:Message: 对实体 "useUnicode" 的引用必须以 ';' 分隔符结尾

    Hibernate 5.3.1 INFO: HHH000206: hibernate.properties not foundException in thread "main" ...

  5. 8.3.ZooKeeper集群安装配置

    1.Zookeeper的搭建方式 Zookeeper安装方式有三种,单机模式和集群模式以及伪集群模式. 单机模式:Zookeeper只运行在一台服务器上,适合测试环境: 伪集群模式:就是在一台物理机上 ...

  6. The basic concept of information theory.

    Deep Learning中会接触到的关于Info Theory的一些基本概念.

  7. selenium 实战

    iframe driver.switch_to_frame(id="xx") 多窗口 from selenium import webdriver from time import ...

  8. IntelliJ IDEA安装后几个重要的目录及配置文件讲解

    本文大概记录了IntelliJ IDEA安装之后比较重要的目录和几个核心文件 重要的安装目录 安装完之后的bin目录大致如下 IntelliJ IDEA 的安装目录并不复杂,上图为最常改动的 bin ...

  9. mybatis中#{}和${}的区别(转载)

    原文地址:http://www.cnblogs.com/baizhanshi/p/5778692.html 1. #将传入的数据都当成一个字符串,会对自动传入的数据加一个双引号.如:order by ...

  10. 如何使用Laravel Debugbar?

    非常好用的Laravel debug工具,一定要安装 Chrome/FireFox 都会自带一些 debug 工具可以帮助我们 debug 前端,如 CSS.JavaScript… 等,但若要 deb ...