re 模块

摘要:
重新模块w字母数字下划线s所有不可见字符d所有数字单词末尾^行开头的所有字符$行末尾+1或更多*0或更多{m,n}至少m次,最多n次{m}必须是m次,不多于或少于{,n}}最多n次[ac]a|b|c范围匹配()分组优先级?

re 模块

 

w  字母数字下划线

s  所有不可见字符

d  所有数字

.   所有字符(除了换行符)

 单词末尾

 

^  行首

$  行尾

 

+  1个或多个

*  0个或多个

 

{m,n} 最少m次,最多n

{m} 必须是m 次不能多不能少

{n} 最大n

 

[abc]   a|b|c   范围匹配

 

() 分组优先括号里面的

?: 取消括号优先级 

 

 

re模块常用方法
findall 从左往右查找所有满足条件的字符 返回一个列表

search 返回第一个匹配的字符串 结果封装为对象 span=(0, 5) 匹配的位置 match匹配的值
match     匹配行首  返回值与search相同

  对于search match 匹配的结果通过group来获取
compile  将正则表达式 封装为一个正则对象 好处是可以重复使用这个表达式

 

 

findall   查找所有的

search    查找索引    从左到右一次匹配返回第一次匹配的结果

print(re.search("hello"," world hello python"))

 

match     只查行首索引

print(re.match("hello"," world hello python"))     没有则为None

 

split     切割

print(re.split("hello","world hello python",maxsplit=0))

 

sub      替换

src = "http://t.zoukankan.com/c++|java|python|shell"
# 用正则表达式将c shell换位置
print(re.sub("([a-zA-Z]+)|","",src))



 

免责声明:文章转载自《re 模块》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇.net 多线程的使用(Thread)前端开发命名规范下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

python 格式化输出

格式化输出 要理解格式化输出,就要先理解占位符 % 占位符 s 字符串 d 数字 先用占位符占位 再统一按顺序替换 name = input('请输入姓名:') age = input('请输入年龄:') job = input('请输入工作:') hobbie = input('请输入爱好:') msg = '''---------- info of...

python测试算法运行时间函数

1、计算程序运行的时间函数(python版本)import timedef cal_time(func): def wrapper(*args,**kwargs): t1=time.perf_counter() result=func(*args,**kwargs) t2=time.perf_counter(...

PostgreSQL连接python,postgresql在python 连接,创建表,创建表内容,插入操作,选择操作,更新操作,删除操作。

安装 PostgreSQL可以用Python psycopg2模块集成。 sycopg2是Python编程语言的PostgreSQL数据库的适配器。 其程序代码少,速度快,稳定。不需要单独安装这个模块,因为它默认情况下被运往随着Python版本在2.5.x一起的。如果不把它安装在机器上,然后可以使用yum命令安装它,如下所示: $yum install p...

Gvim —— win 7 下 vim 环境配置 及python开发常用设置

不能不承认,notepad++是一个非常优秀的文本编辑器,上手方便,能装很多插件,可以直接编译C++、Java、python等语言。但经常碰鼠标确实是一件非常恼火的事情(快捷键真心不够)。 当然,练习在vim环境下编程也会非常辛苦,这里是主流文本编辑器学习曲线。之前也没太认真学,只是勉强能用。直到看到师父在在vim上灵动的操作后,突然就很想拥有这个“技能”...

python科学计算_numpy_线性代数/掩码数组/内存映射数组

1. 线性代数 numpy对于多维数组的运算在默认情况下并不使用矩阵运算,进行矩阵运算可以通过matrix对象或者矩阵函数来进行; matrix对象由matrix类创建,其四则运算都默认采用矩阵运算,和matlab十>分相似: a = np.matrix([[1,2,3],[4,5,6],[7,8,9]]) matrix([[1, 2, 3],[4,...

Python数据可视化--matplotlib

抽象化|具体化: 如盒形图 | 现实中的图 功能性|装饰性:没有装饰和渲染 | 包含艺术性美学上的装饰 深度表达|浅度表达:深入层次的研究探索数据 | 易于理解的,直观的表示 多维度|单一维度:数据的多个层次 | 数据的单一维度 创造性|熟悉性:全新的方式进行可视化 | 被大众接受并且熟悉的方式 新颖性|冗余性: 每个元素只表述一次 | 每个元素表示多次...