python3中的正则表达式
精确匹配:
\d: 匹配一个数字
\w: 匹配一个字母或数字
. : 匹配任意一个字符
\s: 匹配一个空格(包括tab等空白符)
匹配变长的字符:
* : 匹配任意个字符,包括0个
+ : 匹配至少一个字符
? : 匹配0个或一个字符
{n} : 匹配n个字符
{n,m} : 匹配n~m个字符
eg: 说明“\d{3}\s+\d{2,5}”的含义
\d{3}: 表示匹配3个数字,例如'028'
\s+: 表示匹配至少一个空格
\d{2,5}: 表示匹配2~5个数字,例如'1245'
比如可以匹配以任意个空格隔开区号的电话号码。例如'028 57652'
[] :用来表示范围
[0-9a-zA-Z\_]: 可以匹配一个数字、大小写字母或者下划线
[0-9a-zA-Z\_]+: 可以匹配至少由一个数字、大小写字母或者下划线组成的字符串
eg: 'a54', 'fasd', 'who_lj123'...
[a-zA-Z\_][0-9a-zA-Z\_]*: 可以匹配由字母或下划线开头,后边任意个有数字、字母或者下划线组成的字符串,即python的合法变量名
[a-zA-Z\_][0-9a-zA-Z\_]{0, 19}: 更精确地限制了变量的长度是1-20个字符
a|b: 匹配a或者b
eg: (P|p)ython: 可以匹配'Python'或者'python'
^: 匹配行首
eg: ^\d: 表示行必须以数字开头
$: 匹配行尾
eg: $\d: 表示行必须以数字结尾
^SOME_STR$: 匹配只包含SOME_STR的行
python中的正则表达式模块是re
match()方法判断是否匹配,如果匹配成功,返回一个Match对象,否则返回None。常见的判断方法就是:
test = '用户输入的字符串'
if re.match(r'正则表达式', test):
print('ok')
else:
print('failed')
切分字符串:
re.split(r'\s+', 'TEST_STR'): 指定分隔符为空格
re.split(r'[\s\,\;]+', 'TEST_STR'): 指定分隔符为空格、逗号或者分号
python3中的正则表达式的更多相关文章
- 正则表达式:Python3中的应用简介
正则表达式:Python3中的应用简介 一.正则表达式 1,概述 正则表达式,又称规则表达式.(英语:Regular Expression,在代码中常简写为regex.regexp或RE),计算机科学 ...
- python3中的RE(正则表达式)
记录大佬的 整理 原文来自:https://blog.csdn.net/weixin_40136018/article/details/81183504 1.引入正则模块(Regular Expres ...
- Python3中Urllib库基本使用
什么是Urllib? Python内置的HTTP请求库 urllib.request 请求模块 urllib.error 异常处理模块 urllib.par ...
- Python3中正则模块re.compile、re.match及re.search函数用法详解
Python3中正则模块re.compile.re.match及re.search函数用法 re模块 re.compile.re.match. re.search 正则匹配的时候,第一个字符是 r,表 ...
- Python3中的字符串函数学习总结
这篇文章主要介绍了Python3中的字符串函数学习总结,本文讲解了格式化类方法.查找 & 替换类方法.拆分 & 组合类方法等内容,需要的朋友可以参考下. Sequence Types ...
- PHP中有关正则表达式的函数集锦
之前学正则表达式的目的是想从网上抓取点小说啊,文档啊,还有获取相应的视频连接然后批量下载.当时初学PHP根本不知道PHP有专门抓包的工具,就像Simple_html_dom.php(在我的其他博文中有 ...
- JavaScript中的正则表达式(终结篇)
JavaScript中的正则表达式(终结篇) 在之前的几篇文章中,我们了解了正则表达式的基本语法,但那些语法不是针对于某一个特定语言的.这篇博文我们将通过下面几个部分来了解正则表达式在JavaScri ...
- Coursera-Getting and Cleaning Data-week4-R语言中的正则表达式以及文本处理
博客总目录:http://www.cnblogs.com/weibaar/p/4507801.html Thursday, January 29, 2015 补上第四周笔记,以及本次课程总结. 第四周 ...
- 9.JAVA中的正则表达式
一.JAVA中的正则表达式 1.概念:以某种特定的方式描述字符串 1.Java中正则表达式的规则 ? #{0,1}-?有一个-或者没有 \\ #表示一个" ...
随机推荐
- python3练习100题——030
这周开始,要重新振作一点吧! 如果每天都想着消费升级,而不是想着如何投入时间精力让自己进步,未来根本就看不到希望. 我想要更认真的活着 live wild 原题链接:http://www.runoob ...
- 添加Usb3.0驱动到win7/8/10的usb安装光盘
文章中所有需要使用到的软件和资源在文章末尾的网盘连接中有下载 Run the DISM GUI Tool Right-click on DISM GUI.exe and select Run as A ...
- 使用API进行文件读写——CreateFile,ReadFile,WriteFile等
看了这个帖子: http://www.vbgood.com/thread-99249-1-1.html 就写了一个使用API读写文件的简单类,苦力活. 演示代码在附件里. '********* ...
- 题解【洛谷P1379】八数码难题
题面 典型的\(\text{BFS}\). 双向广搜是一种对\(\text{BFS}\)的优化,它适用于起点和终点都明确的题目. 这里给出我的双向广搜模板. inline int bfs()//双向广 ...
- 什么是kafka,怎么使用? (2) - 内含zookeeper等
zookeeper依赖于java https://baike.baidu.com/item/yum/2835771?fr=aladdin http://yum.baseurl.org/ 去yum官网下 ...
- Linux oracle安装 内核参数讲解
在安装Oracle的时候需要调整linux的内核参数,但是各参数代表什么含义呢,下面做详细解析. Linux安装文档中给出的最小值: fs.aio-max-nr = 1048576 fs.file-m ...
- ubuntu 安装谷歌
下载ubuntugoogle官网:http://www.ubuntuchrome.com/ 我的是ubuntuLTS稳定版: 上传Ubuntu: 执行解压操作: sudo dpkg -i goo ...
- C++类几种初始化的顺序
首先给段代码: class A{ public: ; A():x(){cout<<"A(): x="<<x<<endl;} A(int a):x ...
- Android开发模拟器(虚拟机)的连接等操作
前10天一直在解决android开发环境的问题,我将Androidstudio下载并安装好之后,进入IDE之后,下载AVDmanger中的虚拟机以及SDK等等.之后发现并不能运行虚拟机,根本无法打开虚 ...
- 浏览器的主要构成High Level Structure
浏览器的主要组件包括: 1. 用户界面- 包括地址栏.后退/前进按钮.书签目录等,也就是你所看到的除了用来显示你所请求页面的主窗口之外的其他部分 2. 浏览器引擎- 用来查询及操作渲染 ...