re模块 | Python 3.5.1

https://docs.python.org/3/library/re.html

http://www.cnblogs.com/PythonHome/archive/2011/11/19/2255459.html

1.提供正则表达式相关操作

2.模式串和匹配串可以是Unicode或8-bit字符串,但不能混用

3.语法

  http://www.cnblogs.com/book-book/p/5411634.html

  ‘.‘ 在DOTALL模式下能匹配‘\n‘

  ‘^‘、‘$‘在MULTILINE模式下能匹配多行起始和结束

  (?aiLmsux):

    A: ASCII-only

    I: ignore case

    L: local dependent

    M: multiple line

    S: dot all

    U: Unicode-only

    X: verbose

  (?P<name>...)

  (?P=name)

  (?#...)

  (?<=...)

  (?<!...)

  (?(id/name)yes-pattern|no-pattern)

  \A、\Z匹配字符串起始和结束位置

4.模块内容

  re.compile(pattern, flags=0)

    返回RegexObject对象

    flags有多个时用 ‘|‘ 隔开

      re.A  re.ASCII

      re.DEBUG

      re.I   re.IGNORECASE

      re.L   re.LOCAL

      re.M  re.MULTILINE

      re.S   re.DOTALL

      re.X   re.VERBOSE

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

    在string中任意位置匹配,返回第一个匹配到的对象(match object),或返回None

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

    在string起始位置匹配(即使有re.M属性)

  re.fullmatch(pattern, string, flags=0)

    当整个string能被pattern匹配时返回对应的match object,否则返回None

  re.split(pattern, string, maxsplit=0, flags=0)

    用pattern分割string,如果pattern是用括号括起来的,则能被pattern匹配的分割部分也将保留在结果中

    maxsplit不为0时,分割maxsplit次后剩余部分保留在结果中

    若开头(或结尾)能被pattern匹配,则结果列表中会以空串开始(或结束)

    目前: 空pattern将会被忽略,且若pattern可能为空,有FutureWarning,若pattern为空,有ValueError

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

    找出所有不重叠的匹配子串并返回一个列表

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

    找出匹配子串并返回迭代器,若无匹配返回空列表

  re.sub(pattern, repl, string, count=0, flags=0)

    将string中能被pattern匹配的子串替换为repl

    当count不为0时表示替换count次

    repl可以是一个函数

  re.subn(pattern, repl, string, count=0, flags=0)

    同re.sub() 但re.subn()返回包含心字符串和替换词数的二元组

  re.escape(string)

    对string中非字母数字进行转义

  re.purge()

    清除re缓存

  exception:

    re.error(msg, pattern=None, pos=None)

  Regular Expression Object:

    regex.search(string[, pos[, endpos]])

    regex.match(string[, pos[, endpos]])

    regex.fullmatch(string[, pos[, endpos]])

    regex.split(string, maxsplit=0)

    regex.findall(string[, pos[, endpos]])

    regex.finditer(string[, pos[, endpos]])

    regex.sub(repl, string, count=0)

    regex.subn(repl, string, count=0)

    regex.flags

    regex.groups

    regex.groupindex

    regex.pattern

  Match Object:

    match.expand(template)

    match.group([group1,...])

    match.groups(default=None)

    match.groupdict(default=None)

    match.start([group])  返回匹配开始位置

    match.end([group])  返回匹配结束位置

    match.span([group])  返回包含匹配起始结束位置的二元组

    match.pos

    match.endpos

    match.lastindex

    match.lastgroup

    match.re

    match.string

时间: 2024-10-06 00:12:12

re模块 | Python 3.5.1的相关文章

Python进阶(十)----规范化格式目录, time模块, datatime模块,random模块,collection模块(python额外数据类型)

Python进阶(十)----规范化格式目录, time模块, datatime模块,random模块,collection模块(python额外数据类型) 一丶规范化格式目录 六个目录: #### 对某某项目进行一个标准化的开发,进行规范化. #bin : 启动项目程序的主入口 #conf : 项目的配置文件 #core : 主要逻辑(业务逻辑) #db : 存放数据() #lib : 辅助文件(存放公共的一些方法) #README : 项目文档说明 ? 二丶time模块(时间模块) 时间的三

pxssh模块——python

1.描述: pxssh预先已经有了login().logout()和prompt()等函数直接与ssh进行交互. 1.1 示例代码: #导入pxssh模块 import pxssh def send_command(s,cmd): #发送命令 s.sendline(cmd) #获取期望的输出提示符 s.prompt() #显示返回信息 print s.before def connect(host,user,password): try: #创建pxssh对象 s = pxssh.pxssh()

PYTHON学习第二模块 python内置模块介绍

1 >>> import time 2 >>> time.time() 3 1491064723.808669 4 >>> # time.time()返回当前时间的时间戳timestamp(定义为从格林威治时间1970年01月01日00时00分00秒起至现在的总秒数)的方法,无参数 5 >>> time.asctime() 6 'Sun Apr 2 00:39:32 2017' 7 >>> # time.asctim

requests模块--python发送http请求

requests模块 在Python内置模块(urllib.urllib2.httplib)的基础上进行了高度的封装,从而使得Pythoner更好的进行http请求,使用Requests可以轻而易举的完成浏览器可有的任何操作.Requests 是使用 Apache2 Licensed 许可证的 基于Python开发的HTTP 库. requests使用 一.GET请求 向 https://github.com/timeline.json 发送一个GET请求,将请求和响应相关均封装在 ret 对象

csv模块-python

CSV模块式python的内置模块,用于读写CSV文件. testqq.csv文件内容: 序号 姓名 年龄 1 啊啊 10 2 宝宝 15 3 尺寸 17 4 等等 19 5 恩恩 20 6 方法 21 一.从CSV文件读取内容 使用CSV模块的reader函数读CSV文件代码: import  csv f =  open('testqq.csv','rb') reader  = csv.reader(f) for  line in reader: print line 运行结果: >>>

# 进程/线程/协程 # IO:同步/异步/阻塞/非阻塞 # greenlet gevent # 事件驱动与异步IO # Select\Poll\Epoll异步IO 以及selectors模块 # Python队列/RabbitMQ队列

1 # 进程/线程/协程 2 # IO:同步/异步/阻塞/非阻塞 3 # greenlet gevent 4 # 事件驱动与异步IO 5 # Select\Poll\Epoll异步IO 以及selectors模块 6 # Python队列/RabbitMQ队列 7 8 ############################################################################################## 9 1.什么是进程?进程和程序之间有什么

threading模块—Python多线程编程

Threading 模块 threading 模块除了提供基本的线程和锁定支持外,还提供了更高级别.功能更全面的线程管理.threading 模块支持守护线程,其工作方式是:守护线程一般是一个等待客户端请求的服务器,如果没有客户端请求,守护线程就是空闲的.如果把一个线程设置为守护线程,就表示这个线程是不重要的,进程退出时不需要等待这个线程完成.(如何设置守护线程?只需执行赋值语句: thread.daemon = True ) threading 模块的对象: 对象 描述 Thread 表示一个

sys模块-python解释器交互

sys模块是与python解释器交互的一个接口 sys.argv 命令行参数List,第一个元素是程序本身路径 sys.exit(n) 退出程序,正常退出时exit(0),错误退出sys.exit(1) sys.version 获取Python解释程序的版本信息 sys.path 返回模块的搜索路径,初始化时使用PYTHONPATH环境变量的值 sys.platform 返回操作系统平台名称 import sys try: sys.exit(1) except SystemExit as e:

pyinstaller 模块-python文件生成exe可执行文件

安装 PyInstaller 模块与安装其他 Python 模块一样,使用 pip 命令安装即可.在命令行输入如下命令: pip install pyinstaller 在 PyInstaller 模块安装成功之后,在 Python 的安装目录下的 Scripts(D:\Python\Python36\Scripts) 目录下会增加一个 pyinstaller.exe 程序,接下来就可以使用该工具将 Python 程序生成 EXE 程序了. pyinstaller 选项 Python 源文件 不