Python标准库之re模块
re模块用于正则表达式。
正则表达式在线测试:http://c.runoob.com/front-end/854
正则表达式元字符可以参考:https://www.w3cschool.cn/zhengzebiaodashi/regexp-metachar.html
re.match()
从字符串开头往后匹配。
import re
x = re.match(r"asdjakd\d{4}","asdjakd1231")
print(x.group())
#输出
asdjakd1231
re.search()
只会搜索一个结果。
import re
x = re.search("\d{4}","1a23sd1231jakd1231")
print(x.group())
#输出
1231
re.findall()
import re
x = re.findall("\d{4}","1a23sd1231jakd1231")
print(x)
#输出
['1231', '1231']
re.split()
分割字符。
import re
x = re.split("\d","abc1sdas2xxx")
print(x)
#输出
['abc', 'sdas', 'xxx']
re.sub()
替换字符
import re
x = re.sub("\d","|","abc1sdas2xxx")
print(x)
#输出
abc|sdas|xxx
如果想只替换一次。
import re
x = re.sub("\d","|","abc1sdas2xxx",count=1)
print(x)
#输出
abc|sdas2xxx
匹配模式
re.I(re.IGNORECASE): 忽略大小写
re.M(MULTILINE): 多行模式
re.S(DOTALL): 点任意匹配模式,可以匹配\n
分组匹配成字典
import re
x = re.search("(?P<province>[0-9]{4})(?P<city>[0-9]{2})(?P<year>[0-9]{4})(?P<birthday>[0-9]{4})" ,"330623197501031922")
print(x.groupdict())
#输出
{'province': '3306', 'city': '23', 'year': '1975', 'birthday': '0103'}
Python标准库之re模块的更多相关文章
- (转)python标准库中socket模块详解
python标准库中socket模块详解 socket模块简介 原文:http://www.lybbn.cn/data/datas.php?yw=71 网络上的两个程序通过一个双向的通信连接实现数据的 ...
- Python标准库之Sys模块使用详解
sys 模块提供了许多函数和变量来处理 Python 运行时环境的不同部分. 处理命令行参数 在解释器启动后, argv 列表包含了传递给脚本的所有参数, 列表的第一个元素为脚本自身的名称. 使用sy ...
- Python标准库之subprocess模块
运行python的时候,我们都是在创建并运行一个进程.像Linux进程那样,一个进程可以fork一个子进程,并让这个子进程exec另外一个程序.在Python中,我们通过标准库中的subprocess ...
- Python标准库之核心模块学习记录
内建函数和异常 包括__builtin__模块和exceptions模块 操作系统接口模块 包括提供文件和进程处理功能的os模块,提供平台独立的文件名处理(分拆目录名,文件名,后缀等)的os.path ...
- Python标准库之logging模块
很多程序都有记录日志的需求,并且日志中包含的信息即有正常的程序访问日志,还可能有错误.警告等信息输出,python的logging模块提供了标准的日志接口,你可以通过它存储各种格式的日志,loggin ...
- Python标准库之os模块
1.删除和重命名文件 import os import string def replace(file, search_for, replace_with): # replace strings in ...
- python标准库之random模块
Python中的random模块用于生成随机数. 下面具体介绍random模块的功能: 1.random.random() #用于生成一个0到1的 随机浮点数:0<= n < 1.0 1 ...
- python - 标准库:subprocess模块
subprocess的目的就是启动一个新的进程并且与之通信. subprocess模块中只定义了一个类: Popen. subprocess.Popen(args, bufsize=0, execut ...
- Python标准库之hashlib模块与hmac模块
hashlib模块用于加密相关的操作.在Python 3.x里代替了md5模块和sha模块,主要提供 SHA1.SHA224.SHA256.SHA384.SHA512 .MD5 算法.如果包含中文字符 ...
- Python标准库之shelve模块(序列化与反序列化)
shelve模块是一个简单的key,value将内存数据通过文件持久化的模块,可以持久化任何picklel可支持的Python数据格式. 序列化 序列化源代码: import shelve impor ...
随机推荐
- hive执行计划简单分析
原始SQL: select a2.ISSUE_CODE as ISSUE_CODE, a2.FZQDM as FZQDM, a2.FZQLB as FZQLB, a2.FJJDM as FJJDM, ...
- php-fpm.conf.default配置文件
;;;;;;;;;;;;;;;;;;;;; ; FPM Configuration ; ;;;;;;;;;;;;;;;;;;;;; ; All relative paths in this confi ...
- Cobalt Strike Bypassing Windows Defender 使用混淆处理
Cobalt Strike – Bypassing Windows Defender 混淆处理 对于所有红色团队成员来说,在交付有效的替代品同时又不拖延延展组织的所有风吹草动始终是一个挑战.就像所有其 ...
- 10个用于C#.NET开发的基本调试工具
在调试软件时,工具非常重要.获取正确的工具,然后再调试时提起正确的信息.根据获取的正确的错误信息,可以找到问题的根源所在.找到问题根源所在,你就能够解决该错误了. 你将看到我认为最基本的解决在C# . ...
- ES6 - 基础学习(2): 新的变量声明方式 let 与 const
ES6)新增加了两个重要的 JavaScript 关键字:let 和 const.以前声明变量时只有一种方式:var,ES6对声明方式进行了扩展,现在可以有三种声明方式了. 1.var:variabl ...
- Android Vitamio初探
GitHub: https://github.com/yixia/VitamioBundle 1.下载完毕导入用Android Studio打开 2.新建Mode,引入依赖 dependencies ...
- DolphinScheduler1.2.1源码分析
DolphinScheduler在2020年2月24日发布了新版本1.2.1,从版本号就可以看出,这是一个小版本.主要涉及BUG修复.功能增强.新特性三个方面,我们会根据其发布内容,做简要的源码分析. ...
- 【转】JS 的 new 到底是干什么的?
原文:https://zhuanlan.zhihu.com/p/23987456?refer=study-fe 大部分讲 new 的文章会从面向对象的思路讲起,但是我始终认为,在解释一个事物的时候,不 ...
- DNS | named.run文件很大的处理方法
在查看/var/named/data目录中发现named.run文件260G+ 总用量 267G -rw-r--r-- 1 named named 1.3K 9月 2 21:27 named.run ...
- Q&A in 2018 - Q2
How to zip a file for Windows? 压缩一个文件: makecab c:/file_name.txt c:/file_name.zip 解压一个文件: expand c:/f ...