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}-?有一个-或者没有 \\ #表示一个" ...
随机推荐
- AntDesign(React)学习-5 路由及使用Layout布局
前言:学习目标实现点击登录按钮,直接进入后台布局页面,类似下面antd官网文档展示效果 ant.design访问 https://ant-design.gitee.io/components/menu ...
- Python Turtle模块的简单应用
时钟 import turtle as t import datetime as dt #画出背景 game = t.Screen() game.bgcolor("white") ...
- rest_framework:url控制
一.基本路由(原始方式) 二.半自动路由(视图继承ModelViewSet) 三.自动路由(自动生成路由) 准备工作: models中创建一张表,默认使用sqlite数据库,更新表 新增测试数据 加载 ...
- 动态规划(Dynamic Programming, DP)---- 最大连续子序列和
动态规划(Dynamic Programming, DP)是一种用来解决一类最优化问题的算法思想,简单来使,动态规划是将一个复杂的问题分解成若干个子问题,或者说若干个阶段,下一个阶段通过上一个阶段的结 ...
- EF CodeFirst关于Mysql如何自动生成数据库表
相对于sqlserver数据库,mysql的配置过程相对麻烦一些,我们从0讲起. 1.新建一个控制台应用程序 右键点击引用--管理NuGet程序包,搜索Mysql.Data.Entity并安装,安装完 ...
- HTMLinput标签
<input> 标签用于搜集用户信息. 常用的属性: type指定输入项的类型 name定义 input 元素的名称. id给输入项取一个名字,方便后期找到和操作 type指定输入项的类型 ...
- 进程间通讯IPC的几种方式总结
Linux进程间的通讯 Unix发展做出重大贡献的两大主力AT&T的贝尔实验室及BSD(加州大学伯克利分校的伯克利软件发布中心)在进程间通信方面的侧重点有所不同.前者对Unix早期的进程间通信 ...
- 浏览器中js执行机制学习笔记
浏览器中js执行机制学习笔记 RiverSouthMan关注 0.0772019.05.15 20:56:37字数 872阅读 291 同步任务 当一个脚本第一次执行的时候,js引擎会解析这段代码,并 ...
- 【网页浏览】怀旧xp画图网页版
非常古老的WindowsXP画图工具 传送链接
- Game of Credit Cards
After the fourth season Sherlock and Moriary have realized the whole foolishness of the battle betwe ...