# 正则表达式 只和字符串打交道

# 正则表达式的规则
# 规则 字符串 从字符串中找到符合规则的内容

# 字符组 : [] 写在中括号中的内容,都出现在下面的某一个字符的位置上都是符合规则的

# [0-9] 匹配数字
# [a-z] 匹配小写字母
# [A-Z] 匹配大写字母
# [8-9]
# [a-zA-Z] 匹配大小写字母
# [a-zA-Z0-9] 匹配大小写字母+数字
# [a-zA-Z0-9_] 匹配数字字母下滑线

# 元字符

# \w  匹配数字字母下滑线 word关键字 [a-zA-Z0-9_]
# \d 匹配所有的数字 digit [0-9]
# \s 匹配所有的空白符 回车/换行符 制表符 空格 space [\n\t ]
# 匹配换行符 回车 \n
# 匹配制表符 tab \t
# 匹配空格
# \W \D \S 和\w \d \s取反
# [\s\S] [\d\D] [\w\W]是三组全集 意思是匹配所有字符
# \b 表示单词的边界

# ^ $

# ^ 匹配一个字符串的开始
# $ 匹配一个字符串的结束
# . 表示匹配 除换行符之外的所有字符
# [] 只要出现在中括号内的内容都可以被匹配
# [^] 只要不出现在中括号中的内容都可以被匹配
# 有一些有特殊意义的元字符进入字符组中会回复它本来的意义 : . | [ ] ( )
# a|b 或 符合a规则的或者b规则的都可以被匹配
# 如果a规则是b规则的一部分,且a规则比b规则要苛刻/长,就把a规则写在前面
# 将更复杂的\更长的规则写在最前面
# () 分组 表示给几个字符加上量词约束的需求的时候,就给这些量词分在一个组

# 量词

# {n}表示 这个量词之前的字符出现n次
# {n,} 表示这个量词之前的字符至少出现n次
# {n,m} 表示这个量词之前的字符出现n-m次
# ? 表示匹配量词之前的字符出现 0次 或者 1次 表示可有可无
# + 表示匹配量词之前的字符出现 1次 或者 多次
# * 表示匹配量词之前的字符出现 0次 或者 多次

# 练习题

# 匹配整数 \d+
# 匹配小数 \d+\.\d+
# 匹配小数或者整数
# \d+\.\d+|\d+
# \d+(\.\d+)?
# 匹配身份证号码 : [1-9]\d{16}[\dx]|[1-9]\d{14}
# [1-9]\d{14}(\d{2}[\dX])? # 正则表达式的匹配特点 : 贪婪匹配
# 它会在允许的范围内取最长的结果
# 非贪婪模式/惰性匹配 : 在量词的后面加上?
# .*?x 匹配任意非换行符字符任意长度 直到遇到x就停止

# 关于字符串挪到python中的转义的问题 : 只需要在工具中测试完毕,确认可以匹配上之后,挪到python中在字符串的外面加上r,r''即可

# print(r'\\n')
# print(r'\n')

#匹配年月日日期 格式2018-12-8

^[0-9]\d{0,3}-(1[0-2]|0?[1-9])-(3[01]|[12]\d|0?[1-9])$

#匹配qq号

[1-9]\d{4,11}

#11位电话号码

1[3-9]\d{9}

#长度为8-10位的用户密码:包含数字字母下划线

\w{8,10}

#匹配验证码:4位数字字母组成

[\da-zA-Z]{4}

#匹配邮箱地址

[0-9a-zA-Z][\w\-.]+@[a-zA-Z0-9\-]+(\.[a-zA-Z0-9\-]+)*\.[A-Za-z0-9]{2,6}

python note 15 正则表达式的更多相关文章

  1. python基础之正则表达式

    正则表达式语法 正则表达式 (或 RE) 指定一组字符串匹配它;在此模块中的功能让您检查一下,如果一个特定的字符串匹配给定的正则表达式 (或给定的正则表达式匹配特定的字符串,可归结为同一件事). 正则 ...

  2. Python基础之 正则表达式指南

    本文介绍了Python对于正则表达式的支持,包括正则表达式基础以及Python正则表达式标准库的完整介绍及使用示例.本文的内容不包括如何编写高效的正则表达式.如何优化正则表达式,这些主题请查看其他教程 ...

  3. Python系列之正则表达式详解

    Python 正则表达式模块 (re) 简介 Python 的 re 模块(Regular Expression 正则表达式)提供各种正则表达式的匹配操作,和 Perl 脚本的正则表达式功能类似,使用 ...

  4. 【转载】Python中的正则表达式教程

    本文http://www.cnblogs.com/huxi/archive/2010/07/04/1771073.html 正则表达式经常被用到,而自己总是记不全,转载一份完整的以备不时之需. 1. ...

  5. Python中的正则表达式教程

    本文http://www.cnblogs.com/huxi/archive/2010/07/04/1771073.html 正则表达式经常被用到,而自己总是记不全,转载一份完整的以备不时之需. 1. ...

  6. Python:笔记(6)——正则表达式

    Python:笔记(6)——正则表达式 re模块 re模块用于在字符串中执行基于正则表达式模式的匹配和替换. 使用原始字符串 正则表达式使用 \ 对特殊字符进行转义,比如,为了匹配字符串 ‘pytho ...

  7. 尚学python课程---15、python进阶语法

    尚学python课程---15.python进阶语法 一.总结 一句话总结: python使用东西要引入库,比如 json 1.python如何创建类? class ClassName: :以冒号结尾 ...

  8. Python高手之路【五】python基础之正则表达式

    下图列出了Python支持的正则表达式元字符和语法: 字符点:匹配任意一个字符 import re st = 'python' result = re.findall('p.t',st) print( ...

  9. python之(re)正则表达式上

    python正则表达式知识预备 正则表达式使用反斜杠" \ "来代表特殊形式或用作转义字符,这里跟Python的语法冲突,因此,Python用" \\\\ "表 ...

随机推荐

  1. 服务注册中心,Eureka比Zookeeper好在哪里?

    著名的CAP理论指出,一个分布式系统不可能同时满足C(一致性).A(可用性).和P(分区容错性).由于分区容错性P在分布式系统中必须要保证的,因此我们只能在A和C之间进行权衡. 因此: Zookeep ...

  2. 创建自定义的 Angular Schematics

    本文对 Angular Schematics 进行了介绍,并创建了一个用于创建自定义 Component 的 Schematics ,然后在 Angular 项目中以它为模板演练了通过 Schemat ...

  3. SQLFullbackup

    /* ==Scripting Parameters== Source Server Version : SQL Server 2016 (13.0.1601) Source Database Engi ...

  4. Spring Boot学习大全(入门)

    Spring Boot学习(入门) 1.了解Spring boot Spring boot的官网(https://spring.io),我们需要的一些jar包,配置文件都可以在下载.添置书签后,我自己 ...

  5. xpath, urllib

    li_category = response.xpath("//div[@class='r-name']") <div class="r-name"> ...

  6. WebService连接winfrom简单实例

    C# 创建.部署和调用WebService的简单示例 webservice 可以用于分布式应用程序之间的交互,和不同程序之间的交互. 具体详细用法可去查询资料.下面开始创建一个简单的webservic ...

  7. QPixmap 在非QtCreator环境下无法显示jpg图片

    这几天需要实现在Qt界面中显示jpg图片,于是直接将路径传给QPixmap对象,发现显示不出来. 然而在Qt SDK自带的Demo中却可以正确显示jpg图片,经搜索引擎查找发现,是自己的exe文件缺少 ...

  8. QTP测试.NET程序的时候,找不到对象或无法录制的解决方案

    解决方案: .NET程序编译的时候:目标平台必须设置为x86,否则QTP找不到对象,不会完成录制

  9. Docker 开启 remoter api

    debian 环境: vi /lib/systemd/system/dcoker.service 修改: ExecStart=/usr/bin/dockerd -H fd://为 ExecStart= ...

  10. css实现布局

    1.两栏布局 两栏布局一般就是一栏定宽一栏自适应(也就是流动).分的细的话还有左栏定宽右栏自适应.右栏定宽左栏自适应. 举个栗子:一栏定宽200px,一栏自适应. <head> <m ...