re模块3
#分组 ()
print(re.findall("(ad)/(vv)","adddad/vvdddddddddd"))
print(re.findall("(ad)/(d)","ad/ddad/vvdddddddddd"))
print(re.findall("(a)(d)","adddad/vvdddddddddd")) #分组中间要有个字母和特殊符号隔开
print(re.findall("(ad)/d(da)","ad/ddad/vvdddddddddd"))
print(re.search("(a)g(b)","adagbgdagbhagb").group())
print(re.findall("(a)g(b)","adagbgdagbh")) ret = re.search("(?P<id>\d{2}):(?P<name>\w{2})","25:a5")
print(ret.group()) #25:a5
print(ret.group("id")) #
print(ret.group("name")) #a5 print(re.search("a[bf]c","abcd").group()) #abc 字符串型
print(re.findall("a[bf]c","abcd")) #['abc'] 列表型 # |
print(re.findall("a|b","afbgh")) #['a', 'b'] 需要匹配所有的a和b
print(re.search("a|b","gaafbghagdbg").group()) #a 只需要匹配所有的a和b
print(re.search("(ab)|f","gaabfbghagdbg").group()) #ab print(re.search("\d|gg","ds125ffgg").group()) #1
findall,match,search区别
print(re.findall("f","ffffffffgdsaadfasda12gtre5y7u")) #['ffffffff', 'f'] #匹配全部
print(re.search("f","gfffgdsaadfasda12gtre5y7u").group()) #f 匹配一个
print(re.match("a","gabd").group()) #a 只在开头匹配如果开头没有就会报错 “NoneType” | 相当于在findall中的"^a"
print(re.split("[ab]","abcg")) #['', '', 'cg']
print(re.split("[ab]","habg")) #['h', '', 'g']
print(re.sub("\d","abc","aa5mm6nn7ff")) #第一个是最右边要替换的位置,中间是替换的内容
print("abcda".replace("a","kk",1)) #替换
print(re.sub("\d","b","ab1cdb2cd"))
rets = re.compile("\d{2}") #编译
print(rets.search("av35ghd").group())
rett = re.finditer("\d","a1n2nm5")
for i in rett:
print(next(rett).group())
print(re.findall("www.(baidu|oldbaidu).com","www.baidu.com")) #['baidu']
#会先匹配结果组里面的内容先返回 ,如果要得到全部结果需要取消权限
print(re.findall("www.(?:baidu|oldbaidu).com","www.baidu.com")) #['www.baidu.com']
re模块3的更多相关文章
- npm 私有模块的管理使用
你可以使用 NPM 命令行工具来管理你在 NPM 仓库的私有模块代码,这使得在项目中使用公共模块变的更加方便. 开始前的工作 你需要一个 2.7.0 以上版本的 npm ,并且需要有一个可以登陆 np ...
- node.js学习(三)简单的node程序&&模块简单使用&&commonJS规范&&深入理解模块原理
一.一个简单的node程序 1.新建一个txt文件 2.修改后缀 修改之后会弹出这个,点击"是" 3.运行test.js 源文件 使用node.js运行之后的. 如果该路径下没有该 ...
- ES6模块import细节
写在前面,目前浏览器对ES6的import支持还不是很好,需要用bable转译. ES6引入外部模块分两种情况: 1.导入外部的变量或函数等: import {firstName, lastName, ...
- Python标准模块--ContextManager
1 模块简介 在数年前,Python 2.5 加入了一个非常特殊的关键字,就是with.with语句允许开发者创建上下文管理器.什么是上下文管理器?上下文管理器就是允许你可以自动地开始和结束一些事情. ...
- Python标准模块--Unicode
1 模块简介 Python 3中最大的变化之一就是删除了Unicode类型.在Python 2中,有str类型和unicode类型,例如, Python 2.7.6 (default, Oct 26 ...
- Python标准模块--Iterators和Generators
1 模块简介 当你开始使用Python编程时,你或许已经使用了iterators(迭代器)和generators(生成器),你当时可能并没有意识到.在本篇博文中,我们将会学习迭代器和生成器是什么.当然 ...
- 自己实现一个javascript事件模块
nodejs中的事件模块 nodejs中有一个events模块,用来给别的函数对象提供绑定事件.触发事件的能力.这个别的函数的对象,我把它叫做事件宿主对象(非权威叫法),其原理是把宿主函数的原型链指向 ...
- 理解nodejs模块的scope
描述 原文档地址:https://docs.npmjs.com/misc/scope 所有npm模块都有name,有的模块的name还有scope.scope的命名规则和name差不多,同样不能有ur ...
- nodejs模块发布及命令行程序开发
前置技能 npm工具为nodejs提供了一个模块和管理程序模块依赖的机制,当我们希望把模块贡献出去给他人使用时,可以把我们的程序发布到npm提供的公共仓库中,为了方便模块的管理,npm规定要使用一个叫 ...
- 开始学nodejs——net模块
net模块的组成部分 详见 http://nodejs.cn/api/net.html 下面整理出了整个net模块的知识结构,和各个事件.方法.属性的用法 net.Server类 net.Socket ...
随机推荐
- 020、Java中字母大小写转换
01.代码如下: package TIANPAN; /** * 此处为文档注释 * * @author 田攀 微信382477247 */ public class TestDemo { public ...
- http error 502.5
原文地址:https://www.cnblogs.com/loui/p/7826073.html 在部署网站时遇到的各种问题,通过检索找到了解决方案,感谢!!记录一下以免忘记.. 解决方法:把IIS的 ...
- mysql sql语句不同平台上大小写区分
- LeetCode559 N叉树的最大深度
题目: 思路: 直接递归求解最大深度就可以,这里主要记录一下Java中比较获得两个数中最大值的方法. import java.math.*; class Solution { public int m ...
- C++(五)构造函数
//构造函数的作用:就是在函数被创建时使用特定的值构造对象,将对象初始化为一个特定的初始状态//例如在构造一个clock类对象的时候,将初始的时间设定为0:0:0//构造函数的名必须与类名相同,不能定 ...
- 指令——history
作用:查看历史命令 一般用于查看已经输入执行过的命令,也可以作为自己练习时的指标衡量,因为在历史命令里有行号显示.
- matlab和fortran混合编程
matlab2016b+vs2010+ivf2013+f90 其实默认是f77语法,但通过配置可以改变为自由格式. 默认只能f77代码,怎样修改: https://ww2.mathworks.cn/m ...
- CSU 1126 DFS前缀和
在一棵树上找影响最小的某个点,某个点的影响是等于其他点到他的距离*其他点的权值 的和 我一开始也找不到什么好的方法,只能想到每个点暴力去判断,但是这样肯定会超时(10^5个点),又有点想用类似前缀和, ...
- vue全家桶router、vuex、axios
main.js import Vue from 'vue' import App from './App' import router from './router' import store fro ...
- 前端第一篇---前端基础之HTML内容
前端基础之HTML内容 阅读目录(Content) 一.HTML初识 1.web服务本质 2.HTML是什么 3.HTML不是什么 二.HTML文档结构 三.HTML标签格式 四.HTML注释 五.H ...