精确匹配:

\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中的正则表达式的更多相关文章

  1. 正则表达式:Python3中的应用简介

    正则表达式:Python3中的应用简介 一.正则表达式 1,概述 正则表达式,又称规则表达式.(英语:Regular Expression,在代码中常简写为regex.regexp或RE),计算机科学 ...

  2. python3中的RE(正则表达式)

    记录大佬的 整理 原文来自:https://blog.csdn.net/weixin_40136018/article/details/81183504 1.引入正则模块(Regular Expres ...

  3. Python3中Urllib库基本使用

    什么是Urllib? Python内置的HTTP请求库 urllib.request          请求模块 urllib.error              异常处理模块 urllib.par ...

  4. Python3中正则模块re.compile、re.match及re.search函数用法详解

    Python3中正则模块re.compile.re.match及re.search函数用法 re模块 re.compile.re.match. re.search 正则匹配的时候,第一个字符是 r,表 ...

  5. Python3中的字符串函数学习总结

    这篇文章主要介绍了Python3中的字符串函数学习总结,本文讲解了格式化类方法.查找 & 替换类方法.拆分 & 组合类方法等内容,需要的朋友可以参考下. Sequence Types ...

  6. PHP中有关正则表达式的函数集锦

    之前学正则表达式的目的是想从网上抓取点小说啊,文档啊,还有获取相应的视频连接然后批量下载.当时初学PHP根本不知道PHP有专门抓包的工具,就像Simple_html_dom.php(在我的其他博文中有 ...

  7. JavaScript中的正则表达式(终结篇)

    JavaScript中的正则表达式(终结篇) 在之前的几篇文章中,我们了解了正则表达式的基本语法,但那些语法不是针对于某一个特定语言的.这篇博文我们将通过下面几个部分来了解正则表达式在JavaScri ...

  8. Coursera-Getting and Cleaning Data-week4-R语言中的正则表达式以及文本处理

    博客总目录:http://www.cnblogs.com/weibaar/p/4507801.html Thursday, January 29, 2015 补上第四周笔记,以及本次课程总结. 第四周 ...

  9. 9.JAVA中的正则表达式

    一.JAVA中的正则表达式 1.概念:以某种特定的方式描述字符串 1.Java中正则表达式的规则 ?          #{0,1}-?有一个-或者没有 \\           #表示一个" ...

随机推荐

  1. AntDesign(React)学习-5 路由及使用Layout布局

    前言:学习目标实现点击登录按钮,直接进入后台布局页面,类似下面antd官网文档展示效果 ant.design访问 https://ant-design.gitee.io/components/menu ...

  2. Python Turtle模块的简单应用

    时钟 import turtle as t import datetime as dt #画出背景 game = t.Screen() game.bgcolor("white") ...

  3. rest_framework:url控制

    一.基本路由(原始方式) 二.半自动路由(视图继承ModelViewSet) 三.自动路由(自动生成路由) 准备工作: models中创建一张表,默认使用sqlite数据库,更新表 新增测试数据 加载 ...

  4. 动态规划(Dynamic Programming, DP)---- 最大连续子序列和

    动态规划(Dynamic Programming, DP)是一种用来解决一类最优化问题的算法思想,简单来使,动态规划是将一个复杂的问题分解成若干个子问题,或者说若干个阶段,下一个阶段通过上一个阶段的结 ...

  5. EF CodeFirst关于Mysql如何自动生成数据库表

    相对于sqlserver数据库,mysql的配置过程相对麻烦一些,我们从0讲起. 1.新建一个控制台应用程序 右键点击引用--管理NuGet程序包,搜索Mysql.Data.Entity并安装,安装完 ...

  6. HTMLinput标签

    <input> 标签用于搜集用户信息. 常用的属性: type指定输入项的类型 name定义 input 元素的名称. id给输入项取一个名字,方便后期找到和操作 type指定输入项的类型 ...

  7. 进程间通讯IPC的几种方式总结

    Linux进程间的通讯 Unix发展做出重大贡献的两大主力AT&T的贝尔实验室及BSD(加州大学伯克利分校的伯克利软件发布中心)在进程间通信方面的侧重点有所不同.前者对Unix早期的进程间通信 ...

  8. 浏览器中js执行机制学习笔记

    浏览器中js执行机制学习笔记 RiverSouthMan关注 0.0772019.05.15 20:56:37字数 872阅读 291 同步任务 当一个脚本第一次执行的时候,js引擎会解析这段代码,并 ...

  9. 【网页浏览】怀旧xp画图网页版

    非常古老的WindowsXP画图工具 传送链接

  10. Game of Credit Cards

    After the fourth season Sherlock and Moriary have realized the whole foolishness of the battle betwe ...