Python连载48-正则表达式(中)
一、正则的写法:
. (点好) :表示任意一个字符,除了\n,比如查找所有的一个字符\.
[] :匹配中括号中列举的任意字符,比如[L,Y,0], LLY, Y0, LIU
\d :任意一个数字
\D :除了数字都可以
\s :表示空格,tab键
\S :除了空白符号
\w :单词字符,就是a-z,A-Z,0-9,_
\W :除了单词字符
* :表示前面的内容重复零次或者多次
+ :表示前面内容至少出现一次
?:前面才出现的内容零次或者一次
{m,n} :允许前面的内容出现最少m次,最多n次
^ :匹配字符串的开始
& :匹配字符串的结尾
\b :匹配单词的边界
():对正则表示式进行分组,从第一个括号开始,编号逐渐增大
\A :只匹配字符串开头,\Aabcd,则abcd
\Z :仅匹配字符串末尾,abcd\Z,abcd
| :管道符号,相当于或
(?P<name>...) :分组,除了原来的编号再制定一个别名,(?P<id>12345){2}
(?P=name) :引用分组
我们举几个例子:
^\d$ 验证一个数字
^\d+$ 必须至少有一个数字
^\d{5,10}$ 只能出现数字,且位数为5-10位
^[16-99]$ 注册者输入年龄只能在16-99这个区间
^[a-zA-Z0-9]$ 只能输入英文字符和数字
[0-9]{5,12} 验证qq号码
二、Re包的大致使用过程
1.使用compile将表示正则的字符串编译为一个pattern对象
2.通过pattern对象提供一系列方法对文本进行查找匹配,获得匹配结果,一个Match对象最后使用Match对象提供的属性和方法获取信息,根据需要进行操作。
三、Re常用函数
group():获取一个或多个分组匹配的子串,当获得整个匹配的字符串时,直接使用group或者group(0)
start:获取分组匹配的子串在整个字符串中的开始位置,参数默认为0
end:获取分组匹配的子串在整个字符串中的结束位置,默认为
span:返回的结构数组(start(group),end(group))
四、源码
2.CSDN:https://blog.csdn.net/weixin_44630050(心悦君兮君不知-睿)
3.博客园:https://www.cnblogs.com/ruigege0000/
4.欢迎关注微信公众号:傅里叶变换,个人公众号,仅用于学习交流,后台回复”礼包“,获取大数据学习资料

Python连载48-正则表达式(中)的更多相关文章
- Python字符串和正则表达式中的反斜杠('\')问题
在Python普通字符串中 在Python中,我们用'\'来转义某些普通字符,使其成为特殊字符,比如 In [1]: print('abc\ndef') # '\n'具有换行的作用 abc defg ...
- python re:正则表达式中使用变量
参考:https://www.cnblogs.com/songbiao/p/12422632.html Python中正则表达式的写法,核心就是一个字符串.如下:re.compile(r'表达式')所 ...
- python之(re)正则表达式上
python正则表达式知识预备 正则表达式使用反斜杠" \ "来代表特殊形式或用作转义字符,这里跟Python的语法冲突,因此,Python用" \\\\ "表 ...
- Python系列之正则表达式详解
Python 正则表达式模块 (re) 简介 Python 的 re 模块(Regular Expression 正则表达式)提供各种正则表达式的匹配操作,和 Perl 脚本的正则表达式功能类似,使用 ...
- Python正则表达式中的re.S
title: Python正则表达式中的re.S date: 2014-12-21 09:55:54 categories: [Python] tags: [正则表达式,python] --- 在Py ...
- Python抓取页面中超链接(URL)的三中方法比较(HTMLParser、pyquery、正则表达式) <转>
Python抓取页面中超链接(URL)的3中方法比较(HTMLParser.pyquery.正则表达式) HTMLParser版: #!/usr/bin/python # -*- coding: UT ...
- python 正则表达式中反斜杠(\)的麻烦和陷阱
这里是一点小心得:由于下面两个原因,在正则表达式中使用反斜杠就会产生了一个双重转换的问题. (1).python自身处理字符串时,反斜杠是用于转义字符 (2).正则表达式也使用反斜杠来转义字符 ...
- Python正则表达式中的re.S的作用
在Python的正则表达式中,有一个参数为re.S.它表示“.”(不包含外侧双引号,下同)的作用扩展到整个字符串,包括“\n”.看如下代码: import re a = '''asdfhellopas ...
- python正则表达式中的分组 group
维基百科:http://wiki.ubuntu.org.cn/Python%E6%AD%A3%E5%88%99%E8%A1%A8%E8%BE%BE%E5%BC%8F%E6%93%8D%E4%BD%9C ...
- Python正则表达式中的re.S,re.M,re.I的作用
正则表达式可以包含一些可选标志修饰符来控制匹配的模式.修饰符被指定为一个可选的标志.多个标志可以通过按位 OR(|) 它们来指定.如 re.I | re.M 被设置成 I 和 M 标志: 修饰符 描述 ...
随机推荐
- postgres centos 创建数据库 创建用户
一个小的流程关于如何创建数据库和用户,用以加强印象,以及留档备份 一.创建账户 1.登录postgres账户 su postgres 2.进入psql 指令 psql 3.创建用户 create US ...
- Vm虚拟机最小化安装linux并配置NAT网络连接(全图)
- C# 执行 cmd 命令, 不显示任何窗口
代码如下: 调用的命令:reg export exportPath registryKey -y Process proc = new Process(); proc.StartInfo.FileNa ...
- 【CentOS 7】CentOS 7各个版本镜像下载地址(转)
参考链接:https://www.centos.org/download/mirrors/ https://www.cnblogs.com/defineconst/p/11176593.html
- FFT/NTT中档题总结
被DeepinC%怕了,把一些题放到这里来 T1Normal 其实这道题放到中档题也不太合适,个人感觉真的很难,机房里好像都是颓的题解 因为期望的可加性,把每个点的贡献单独处理,即求期望深度 考虑$y ...
- 【学习笔记】C/C++
1. C语言中的 scanf() 函数 该函数包含在头文件 <stdio.h> 或者 <cstdio> (在C++中使用时) 函数的返回值指的是 所输入的数据与格式字符串匹配的 ...
- C sharp #004# 进度条与Timer
饮水思源:金老师的自学网站 C#实现进度条异常简单,因为所有东西都已经封装好了. 只需要简单的拖拽: 写两行代码就完工了: private void timer1_Tick(object sender ...
- Windows10 搭建Kafka集群
下载Kafka 1.下载Kafka:http://mirror.bit.edu.cn/apache/kafka/2.3.0/kafka_2.12-2.3.0.tgz 2.解压后复制Kafka文件夹,分 ...
- [灵魂拷问]MySQL面试高频100问(工程师方向)
作者:呼延十 juejin.im/post/5d351303f265da1bd30596f9 前言 本文主要受众为开发人员,所以不涉及到MySQL的服务部署等操作,且内容较多,大家准备好耐心和瓜子矿泉 ...
- Netty服务端Channel的创建与初始化
Netty创建服务端Channel时,从服务端 ServerBootstrap 类的 bind 方法进入,下图是创建服务端Channel的函数调用链.在后续代码中通过反射的方式创建服务端Channel ...