re库是python的一个标准库,不需要自己用pip额外下载,直接调用即可。

下面介绍以下库中函数的作用。

1.re.compile(patter, flags=0)

patter是一个正则表达式字符串,例如"[0-9]+",该函数返回一个模式对象(patter object),str类型

2.re.escape(str)

str是一个字符串,该函数返回一个转义后的字符串,例如:

t = re.escape("www.baidu.com")
print(t)
# 输出 www\.baidu\.com

3.match(pattern, string, flags=0)

该函数匹配字符串string的开头,遇到第一个不符合的字符时结束。若匹配成功,返回一个match对象(下文会介绍),否则返回None

pattern = "[0-9]"
string = "1abcd"
m = re.match(pattern, string)
print(m)
# 输出 <_sre.SRE_Match object; span=(0, 1), match='1'>
pattern = "[0-9]"
string = "a1bcd"
m = re.match(pattern, string)
print(m)
# 输出 None

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

在字符串string中,匹配第一组符合正则表达式的字符串。若匹配成功, 返回一个match对象(下文会介绍),否则返回None

pattern = "[0-9]"
string = "a1b2cd"
m = re.search(pattern, string)
print(m)
# 输出 <_sre.SRE_Match object; span=(1, 2), match='1'>

5.findall(pattern,string,flags=0)

返回字符串string中所有符合正则表达式的字符串构成的列表

pattern = "[0-9]"
string = "a1b2cd"
m = re.findall(pattern, string)
print(m)
# 输出 ['1', '2']

6.finditer(pattern,string,flags=0)

返回字符串string中所有符合正则表达式的字符串构成的iterator

pattern = "[0-9]"
string = "a1b2cd"
m = re.finditer(pattern, string)
for t in m:
print(t)
# 输出
<_sre.SRE_Match object; span=(1, 2), match=''>
<_sre.SRE_Match object; span=(3, 4), match=''>

match对象

1.match.group(index=0)

0 返回整个匹配到的字符串

其他数字则返回对应的分组,多个数字返回相应分组构成的元组

2.match.start()

返回match的开始位置

3.match.end()

返回match 的结束位置

4.match.group()

返回一个元祖对象,(match.start(),match.end())

Python库-re(正则表达式)的更多相关文章

  1. 转 Python标准库01 正则表达式 (re包)

    作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明.谢谢! 我将从正则表达式开始讲Python的标准库.正则表达式是文字处理中常用的工具,而且 ...

  2. Python标准库01 正则表达式(re包)

    python正则表达式基础 简单介绍 正则表达式并不是python的一部分.正则表达式是用于处理字符串的强大工具,拥有自己独特的语法及一个独立的处理引擎,效率上可能不如str自带的方法,但功能十分强大 ...

  3. python库学习笔记——re库:正则表达式入门(一)

    什么是正则表达式? 我们在处理文本文件的时候,会按照某种规则查找某些特定的字符串.比方我们希望从一堆电子档案中找到人员的电话号码整理成通讯录.于是,我们可以利用特定字符串的规律编程获得我们想要的信息. ...

  4. Python::re 模块 -- 在Python中使用正则表达式

    前言 这篇文章,并不是对正则表达式的介绍,而是对Python中如何结合re模块使用正则表达式的介绍.文章的侧重点是如何使用re模块在Python语言中使用正则表达式,对于Python表达式的语法和详细 ...

  5. Python基础之 正则表达式指南

    本文介绍了Python对于正则表达式的支持,包括正则表达式基础以及Python正则表达式标准库的完整介绍及使用示例.本文的内容不包括如何编写高效的正则表达式.如何优化正则表达式,这些主题请查看其他教程 ...

  6. 创业公司都在使用的3款Python库

    Instavest上发表了一篇博文,文章分享了深受创业公司喜爱的3款Python库,该文章在Hacker News上引发了开发者的激烈探讨,如果你也对此感兴趣,不妨移步去看下.笔者将该文简译过来以分享 ...

  7. Python 库/模块/工具收集

    1 算法 1.1 字符串处理 re 正则表达式的标准库. StringIO / cStringIO 以读写文件的方式来操作字符串(有点类似于内存文件). cStringIO 是 C 语言实现的,提供高 ...

  8. 小众Python库介绍

    Python 是世界上发展最快的编程语言之一.它一次又一次地证明了自己在开发人员和跨行业的数据科学中的实用性.Python 及其机器学习库的整个生态系统使全世界的用户(无论新手或老手)都愿意选择它.P ...

  9. python 库安装方法及常用库

    python 库安装方法及常用库 python库安装方法: 方法一:setpu.py 1.下载库压缩包,解压,记录下路径:*:/**/……/ 2.运行cmd,切换到*:/**/……/目录下 3.运行s ...

随机推荐

  1. WeChat-JSAPI支付

    官方API:打开连接 特别注意----JSAPI只能在微信环境下 测试!2017-04-19 配置:微信公众号中 添加微信支付配置--请认真填写配置并获取下面对应的数据才能正常运行. ======== ...

  2. 12.18 分布式系统下的session

    广义的session: 会话控制,可以理解成为一种保存key-value的机制 从key的方面来看:sessionId和token sessionId: 服务端请求客户端的时候,服务端通过setcoo ...

  3. 《利用Python进行数据分析》笔记---第2章--来自bit.ly的1.usa.gov数据

    写在前面的话: 实例中的所有数据都是在GitHub上下载的,打包下载即可. 地址是:http://github.com/pydata/pydata-book 还有一定要说明的: 我使用的是Python ...

  4. JVM运行时数据区和垃圾回收机制

    最近参考各种资料,尤其是<深入理解Java虚拟机 JVM高级特性和最佳实践>,大牛之作.把最近学习的Java虚拟机组成和垃圾回收机制总结一下. 你不会的都是新知识,学无止境,每天进步一点点 ...

  5. Xcode 9 俩个你必须知道的新功能

    Xcode 9 beta 版已经可以下载了,不知道大家伙对这个新版本开发工具看法如何,最近我费了一番周折终于体验了一把,升级系统,下载Xcode,验证安装扒拉扒拉什么的,几乎搞了我一天,我做开发使用的 ...

  6. 简单说说什么是Restful

    在确定要把自己的服务创建成RESTFUL之前,要明白什么样的服务什么是RESTFUL service(https://en.wikipedia.org/wiki/Representational_st ...

  7. [Python] dict字典排序和多条件排序

    利用lambda实现排序:要实现多条件排序,只需要依次指定排序的标准,具体实现如下 counter = {'是': 1, '不是': 1, '你': 3} counter_list = sorted( ...

  8. 用pip安装python 模块OpenSSL

    windows下 1.配置好pip命令 下载安装 pip‑1.5.6.win‑amd64‑py2.7.exeor pip‑1.5.6.win32‑py2.7.exe 装好在C:\Python27\Sc ...

  9. 【javascript】利用jquery ajaxPrefilter防止ajax重复提交

    利用jquery ajaxPrefilter中断请求 var pendingRequests = {}; $.ajaxPrefilter(function( options, originalOpti ...

  10. Floyd's Cycle Detection Algorithm

    Floyd's Cycle Detection Algorithm http://www.siafoo.net/algorithm/10 改进版: http://www.siafoo.net/algo ...