python中re模块_python中re模块的使用以及一些正则表达式的总结
一、re模块的使用-常用方法
match(pattern, string, flags = 0) 从string的第一个字符来匹配。如果匹配成功,返回匹配对象,否则返回None,匹配结果可以用group方法获取
importre
c= re.match('[0-9]+[a-z]+', 'a99aaa')print(c.group(0))
结果:
---------------------------------------------------------------------------
AttributeError Traceback (most recent call last)
in ()
1 import re
2 c = re.match('[0-9]+[a-z]+', 'a99aaa')
----> 3 print(c.group(0))
AttributeError: 'NoneType' object has no attribute 'group'
importre
c= re.match('[0-9]+[a-z]+', '99aaa')print(c.group(0))
结果:
99aaa
search(pattern, string ,flags = 0) 匹配字符串中第一次出现的符合正则的子串,没有从第一个字符匹配的限制。如果匹配成功,则返回匹配对象,否则返回None
importre
c= re.search('[0-9]+[a-z]+', 'aa99aaa')print(c.group(0))
结果:
99aaa
findall(pattern, string[,flags] ) 查找字符串中所有(非重复)出现的正则表达式模式,并返回一个匹配列表
importre
c= re.findall('[0-9]+[a-z]+', 'aa99aaa88bb77cc')print(c)
结果:
['99aaa', '88bb', '77cc']
finditer(pattern, string[,flags] ) 与findall()相同,但返回的是一个迭代器。对于每一次成功匹配,迭代器都会返回一个匹配对象
importre
c= re.finditer('[0-9]+[a-z]+', 'aa99aaa88bb77cc')for i inc:print(i.group(0))
结果:
99aaa
88bb
77cc
split(pattern, string, max = 0) 根据正则表达式的模式分隔符,split函数将字符串分割为列表,返回匹配列表,分割最多操作max次
importre
c= re.split('[0-9]+', 'aa99aaa88bb77cc', 2)print(c)
结果:
['aa', 'aaa', 'bb77cc']
compile(pattern) 生成一个规则模式,返回一个正则表达式对象
importre
c= re.compile('[0-9]+[a-z]+')
r= re.findall(c, 'aa99aaa88bb')print(r)
结果:
['99aaa', '88bb']
以上方法中的flags参数为匹配模式,如下:
1).re.I(re.IGNORECASE): 忽略大小写2).re.M(MULTILINE): 多行模式,改变’^’和’$’的行为3).re.S(DOTALL): 点任意匹配模式,改变’.’的行为,使其可以匹配'\n'
4).re.L(LOCALE): 使预定字符类 \w \W \b \B \s \S 取决于当前区域设定5).re.U(UNICODE): 使预定字符类 \w \W \b \B \s \S \d \D 取决于unicode定义的字符属性6).re.X(VERBOSE): 详细模式。这个模式下正则表达式可以是多行,忽略空白字符,并可以加入注释
二、常用正则
ip: (?:[0-9]{1,3}\.){3}[0-9]{1,3}
邮箱: [a-zA-Z0-9_.+-]+@[a-zA-Z0-9-]+\.[a-zA-Z0-9-.]+
手机号:1[0-9]{10}
python中re模块_python中re模块的使用以及一些正则表达式的总结相关推荐
- python中定义数据结构_Python中的数据结构—简介
python中定义数据结构 You have multiples algorithms, the steps of which require fetching the smallest value ...
- python算法和数据结构_Python中的数据结构和算法
python算法和数据结构 To 至 Leonardo da Vinci 达芬奇(Leonardo da Vinci) 介绍 (Introduction) The purpose of this ar ...
- python通过什么连接数据库_python中常用的各种数据库操作模块和连接实例
这篇文章主要介绍了python中常用的各种数据库操作模块和连接实例,包括sqlite3.oracle.mysql.excel,需要的朋友可以参考下 工作中,经常会有用python访问各种数据库的需求, ...
- 简述python中怎样导入模块_Python中导入模块的两种模式,import
import import pandas import pandas as pd 使用函数方式:.(),或者.() 比如 pandas.read_csv("data/stock.csv&qu ...
- python中options类_python中的optionParser模块
Python 有两个内建的模块用于处理命令行参数: 一个是 getopt,<Deep in python>一书中也有提到,只能简单处理 命令行参数: 另一个是 optparse,它功能强大 ...
- python中sys用法_python中os和sys模块的区别与常用方法总结
python 的 python中os和sys模块的区别与常用方法总结 前言 本文主要介绍了关于python中os和sys模块区别与常用方法的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看看 ...
- python中time模块中的倒计时_Python中time模块与datetime模块在使用中的不同之处 python 的time模块获取的是什么时间...
python的datetime模块的一些问题 time_1 = datetime.datetime.now(pytz.timezone('Asia/Shanghai')) timeimport dat ...
- python modbus类封装_Python 中引入一个文件,模块的概念
Python 提供了强大的模块支持,主要体现在,不仅 Python 标准库中包含了大量的模块(称为标准模块),还有大量的第三方模块,开发者自己也可以开发自定义模块. 通过这些强大的模块可以极大地提高开 ...
- python大型项目中的日志模块_Python中日志模块的使用
前言 程序和脚本往往是无人值守运行的,一旦发生问题,就需要我们去追溯当时的情况来定位问题的原因. 这便需要我们在程序和脚本中引入日志的功能. 相比于print信息,使用logging日志有以下优点 可 ...
- python中自带的模块_python中的模块详解
概念 python中的模块是什么?简而言之,在python中,一个文件(以".py"为后缀名的文件)就叫做一个模块,每一个模块在python里都被看做是一个独立的文件.模块可以被项 ...
最新文章
- [转载]Using ngOptions In AngularJS
- PAT (Advanced Level) 1014. Waiting in Line (30)
- NetBeans 时事通讯(刊号 # 27 - Sep 24, 2008)
- java 100% cpu_Java服务,CPU 100%问题如何快速定位?
- 计算机专业的求职信英文作文,计算机专业本科英文求职信范文
- How to use wget to download mail archives?
- windows环境下安装wget
- pdf reference官方指南之-语法基础和文件结构
- unity 反编译 step1 disUnity
- linux 模拟误码率,误码率BER计算原理及仿真输出
- 3CDaemon使用教程
- php deployer 从入门到精通
- 小米路由器R3原厂BootLoader和eeprom备份
- 再见,马云!再见,世界首富!
- mysql 在指定的dsn中_指定的DSN包含驱动程序和应用程序之间的体系结构不匹配。 JAVA...
- TIDB——HTAP
- 什么是MTTF、MTTR、MTBF?
- 51智能小车超声波避障
- c语言 用结构指针输入,c语言结构体以及结构体指针的使用
- 波段选股王怎么在市场中利用头肩底实现杀跌
热门文章
- PHP获取用户地址方法
- java报错怎么看_IGV 哐当就不能用了,除了换台电脑还能怎么办?
- c语言随机生成整数存放一维数组_C语言入门教程(十)多维数组
- python 内网镜像站_Python|还是回归海龟与裸IDLE,准备卸载Anaconda
- 湖南大学计算机考研考什么,2017年湖南大学计算机系统考研大纲
- java bmp rgb数组_将RGB数据写入BMP位图文件
- Linux多进程拷贝fork,浅析linux中fork函数
- hibernate mysql 映射_hibernate与mysql映射类型对应表与mysql导入导出
- chroot环境怎么重启linux,linux下简易chroot环境的塔建
- html5怎么改为vue_【面试需要Vue全家桶】一文带你看透Vue前端路由