re模块补充
#_author:Administrator
#date:2019/11/9
#前面的 * + ? 都是贪婪匹配,如果要最少匹配的话,则在后面加 ?
import re
#1.贪婪匹配
ret=re.findall('star*','starrrrrr')
print(ret)# ['starrrrrr']
#2.惰性匹配
ret1=re.findall('star*?','starrrrrr')
print(ret1)# ['sta']
# 3 [] 字符集补充
ret2=re.findall('a[cd]b','acdb')
print(ret2)# [] 因为 c 和 d之间是或者的关系,只能取一个 ret3=re.findall('a[c,d]b','a,b')
print(ret3)# ['a,b']
#4.命名分组,组之间可以用任何符号代替
ret4=re.search('(?P<name>\w{2})/(?P<age>\d{2})','gsjsd/67js9')
print(ret4.group()) # sd/67
print(ret4.group('age'))# 67
print(ret4.group('name')) # sd
# 5.
ret5=re.findall('www.\w+.com','www.jingdong.com')
print(ret5)# ['www.jingdong.com'] ret5_=re.findall('www.(\w+).com','www.jingdong.com')
print(ret5_)# ['jingdong'] findall() 只会把匹配到的组里面的内容取出来
# ?: 取消组的优先级 ret6=re.findall('www.(?:\w+).com','www.jingdong.com')
print(ret6) # ['www.jingdong.com']
# 6.sub()
ret7=re.sub('\d','star','jjsdbs8cbsjds9bjjsnj2fds')
print(ret7)# jjsdbsstarcbsjdsstarbjjsnjstarfds
ret8=re.sub('\d','star','1s466c7',)# 后面加数字代表前面多少个进行替换
print(ret8) # stars466c7
#7.subn() 会返回替换了多少次
ret9=re.subn('\d','asd','sh8sd6sds7smm3ssx')
print(ret9)# ('shasdsdasdsdsasdsmmasdssx', 4)
#8.finditer()
ret10=re.finditer('\d','sdjs7sdvhsb8sbs2bsnmxs9j')# ret10为一个迭代器
print(ret10)# <callable_iterator object at 0x01037490>
print(next(ret10).group())
print(next(ret10).group())
print(next(ret10).group())
print(next(ret10).group())
re模块补充的更多相关文章
- 文成小盆友python-num7 -常用模块补充 ,python 牛逼的面相对象
本篇内容: 常用模块的补充 python面相对象 一.常用模块补充 1.configparser模块 configparser 用于处理特定格式的文件,起内部是调用open()来实现的,他的使用场景是 ...
- python模块补充
一.模块补充 configparser 1.基本的读取配置文件 -read(filename) 直接读取ini文件内容 -sections() 得到所有的section,并以列表的形式返回 -opti ...
- python_9(模块补充)
第1章 re模块补充 1.1 贪婪匹配:回溯算法 1.2 .*?的用法 1.3 例:分组<name>取值 1.4 匹配整数删除小数 1.5 正则测试地址 第2章 重点模块 2.1 hash ...
- 8.6 day27 网络编程 osi七层协议 Time模块补充知识 TCP协议
Time模块补充知识 date和datetime区别是什么? date 就是年月日 datetime就是年月时时分秒 以下代码为什么会报错? import json from datetime imp ...
- os模块补充以及序列化模块
os模块补充以及序列化模块 一.os模块的补充 1.os.path.abspath 能把存在的相对路径的绝对路径显示出来 path = os.path.abspath("连达day19. ...
- python day 8: re模块补充,导入模块,hashlib模块,字符串格式化,模块知识拾遗,requests模块初识
目录 python day 8 1. re模块补充 2. import模块导入 3. os模块 4. hashlib模块 5. 字符串格式:百分号法与format方法 6. 模块知识拾遗 7. req ...
- pandas模块补充
数据分析模块pandas和matplotlib补充 面向百度式编程 面向百度式工作 遇到没有见过的知识点或者是相关知识点一定不要慌,结合百度和已知的知识点去学习 pandas模块补充 基于numpy构 ...
- re模块补充与其他模块介绍
注:昨日写了re单个模块几个重要的点需要补充 一.re模块补充 1.findall独有的优先级别展示 res = re.findall('abc', 'abcabcabcabc') print(res ...
- python之re模块补充和其他模块(collection、time、queue、datetime、random)
目录 re模块补充说明 collections模块 queue模块 time模块 datetime模块 random模块 re模块补充说明 在正则表达式中,'()'的作用是进行分组,但是在re模块中, ...
- 7.python模块补充
此文章是对上节文章模块的补充 一,xml模块 xml是实现不同语言或程序之间进行数据交换的协议,可扩展标记语言,标准通用标记语言的子集,是一种用于标记电子文件使其具有结构性的标记语言.xml的格式如下 ...
随机推荐
- ubantu 编译mysql++
sudo apt-get install mysql-server mysql-client 指定mysql-lib位置: ./configure --with-mysql-lib=/usr/lib/ ...
- 实时查询系统架构:spark流式处理+HBase+solr/ES查询
最近要做一个实时查询系统,初步协商后系统的框架 1.流式计算:数据都给spark 计算后放回HBase 2.查询:查询采用HBase+Solr/ES
- 大道浮屠诀---cwRsync同步工具的使用
目的: 在日常生活中,我们有时候会遇到这样类似的问题 ---需要把一台服务器上的某个重要的文件进行备份(拷贝另外的服务器上) ---需要同步系统上的配置文件到其他系统 利用此cwRsync软件可以解决 ...
- 14-MySQL-Ubuntu-数据表的查询-范围查询(三)
范围查询 1,不连续查询-in, not in 查询年龄是12,18,34的学生姓名和年龄信息 select name,age from students where age in (12,18,34 ...
- 蒟蒻kc的垃圾数列
题目背景 在某教练的强迫之下,我一个蒟蒻居然出题了!!!出题了!!!(数据太水别找我qwq) 好的,JL说好的一题100快拿来 题目描述 首先,给你一个空的长度为n的序列(废话) 然后,你有一系列神奇 ...
- PAT L2-021. 点赞狂魔 /// sort+unique去重
https://www.patest.cn/contests/gplt/L2-021 题目大意: 微博上有个“点赞”功能,你可以为你喜欢的博文点个赞表示支持.每篇博文都有一些刻画其特性的标签,而你点赞 ...
- Android笔记之从图库选择图片
Demo链接:https://pan.baidu.com/s/1T4T2pTEswmbcYYfpN3OwDw,提取码:pzqy 参考链接:[Android Example] Pick Image fr ...
- 收藏的链接-English
What is the adverb for deposit? https://www.wordhippo.com/what-is/the-adverb-for/deposit.html
- 【csp】2018-3
第一题 跳一跳 题目: 题意:浅显.qwq 题解:2计数+1,到1就清空计数. 代码: #include<iostream> #include<cstdio> #include ...
- POJ 1946 Cow Cycling
Cow Cycling Time Limit: 1000MS Memory Limit: 30000K Total Submissions: 2516 Accepted: 1396 Descr ...