参考博客: Py西游攻关之模块

就其本质而言,正则表达式(或 RE)是一种小型的、高度专业化的编程语言,(在Python中)它内嵌在Python中,并通过 re 模块实现。正则表达式模式被编译成一系列的字节码,然后由用 C 编写的匹配引擎执行。

import re

# # .  通配符,一个  .  模糊匹配一个除换行符之外的任意字符
# ret = re.findall('a..in', 'helloalvin')
# print(ret) # ['alvin']
#
# # ^ 必须以某个字符开始
# ret = re.findall('^a...n', 'alvinhelloawwwn')
# print(ret) # ['alvin']
#
# # $ 必须以某个字符结尾
# ret = re.findall('a...n$', 'alvinhelloawwwn')
# print(ret) # ['awwwn']
#
# # * 贪婪匹配 [0, +oo]
# ret = re.findall('abc*', 'abcccc') # 贪婪匹配[0,+oo]
# print(ret) # ['abcccc']
#
# ret = re.findall('a.*n', 'alvinhelloawwwn')
# print(ret) # ['alvinhelloawwwn'] 贪婪匹配
#
# # + 贪婪匹配 [1, +oo]
# ret = re.findall('abc+', 'abccc') # [1,+oo]
# print(ret) # ['abccc']
#
# ret = re.findall('a.+n', 'alvinhelloawwwn')
# print(ret) # ['alvinhelloawwwn'] 贪婪匹配
#
# # ? 匹配[0,1]
# ret = re.findall('abc?', 'abcccffab') # [0,1]
# print(ret) # ['abc', 'ab']
#
# {} 自定义重复次数 {1,} 表示一到正无穷
ret = re.findall('abc{1,4}', 'abcccccsccccc')
print(ret) # ['abcccc'] 贪婪匹配 # --------------------------------------------字符集[] # ret = re.findall('a[bc]d', 'acd')
# print(ret) # ['acd'] 匹配 b 或 c
#
# ret = re.findall('[a-z]', 'acd')
# print(ret) # ['a', 'c', 'd']
#
# ret = re.findall('[.*+]', 'a.cd+')
# print(ret) # ['.', '+'] # 在[]中,* + 失去原有的作用
#
# 在字符集里有功能的符号: - ^ \
#
# ret = re.findall('[1-9]', '45dha3')
# print(ret) # ['4', '5', '3']
#
# ^ 放在[]表示取反,不取 a 或 b 或 ,
# ret = re.findall('[^ab,]', '45bdha3,')
# print(ret) # ['4', '5', 'd', 'h', '3']
#
# ret = re.findall('[\d]', '45bdha3')
# print(ret) # ['4', '5', '3'] # \ 的功能
# 1、反斜杠后面跟元字符去除其特殊功能
# 2、反斜杠后面跟普通字符实现其特殊功能
'''
\d 相当于 [0-9]
\D 相当于 [^0-9]
\s 匹配任何空白字符
\S 匹配任何非空字符
\w 匹配任何字母数字字符 [0-9a-zA-Z]
\W 匹配任何非字母数字字符 [^0-9a-zA-Z]
\b 匹配一个特殊字符边界,也就是指单词和空格间的位置
'''
# ret=re.findall('I\b','I ')
# print(ret)#[] ret = re.findall('\dert','13ert')
print(ret) # ['3ert'] ret = re.findall('\Dert','13^ert')
print(ret) # ['^ert'] ret = re.findall('\s123', '')
print(ret) print(re.findall(r'I\b', 'hello,I am a hhI$hh'))
print(re.findall(r'\bI', 'hello, I am a hhI$hh')) print(re.findall(r'\\', r'abf\vaf'))

Python3基础笔记---re模块的更多相关文章

  1. Python3基础笔记--常用模块

    目录: 参考博客:Python 之路 Day5 - 常用模块学习 Py西游攻关之模块 一.time模块 二.random模块 三.os模块 四.sys模块 五.hashlib模块 六.logging模 ...

  2. Python3基础笔记---模块

    参考博客:Py西游攻关之模块 模块的概念: 我们把很多函数分组,分别放到不同的文件里,这样,每个文件包含的代码就相对较少,很多编程语言都采用这种组织代码的方式.在Python中,一个.py文件就称之为 ...

  3. Python3学习笔记27-ConfigParser模块

    ConfigParser模块在Python3修改为configparser,这个模块定义了一个ConfigeParser类,该类的作用是让配置文件生效.配置文件的格式和window的ini文件相同,大 ...

  4. Python3基础笔记---面向对象

    只是对一些新的知识的记录 1.创建类 class ClassName: <statement-1> . . . <statement-N> 类实例化后,可以使用其属性,实际上, ...

  5. Python3基础笔记--基础知识

    目录: 一.变量问题 二.运算符总结 三.字符串问题 四.数据结构 五.文件操作 一.变量问题 变量存储在内存中的值.这就意味着在创建变量时会在内存中开辟一个空间.它自始至终都是在内存中活动,只有指明 ...

  6. Python3基础 __file__ 查询模块的完整路径

             Python : 3.7.3          OS : Ubuntu 18.04.2 LTS         IDE : pycharm-community-2019.1.3    ...

  7. Python3基础笔记_迭代器

    # Python3 迭代器与生成器 import sys ''' 迭代是Python最强大的功能之一,是访问集合元素的一种方式. 迭代器是一个可以记住遍历的位置的对象. 迭代器对象从集合的第一个元素开 ...

  8. Python3学习笔记34-pymongo模块

    pymongo模块是python操作mongo数据的第三方模块,记录一下自己常用到的简单用法. 首先需要连接数据库: MongoClient():该方法第一个参数是数据库所在地址,第二个参数是数据库所 ...

  9. Python3学习笔记32-xlwt模块

    xlwt模块是用来写入excel的第三方模块,需要下载安装后才能使用. 设置字体样式 import xlwt #初始化一个excel excel = xlwt.Workbook(encoding='u ...

随机推荐

  1. world 替换+正则表达式命令

    打开替换命令,点击“更多”,勾选上“通配符”,正则表达式才会起作用

  2. 安卓 使用Gradle生成正式签名apk文件

    1. 进入app中的build.gradle下面进行配置 2.进入Gradle下面选择clean和assembleRelese,双击 3.生成成功,前往查看 4.加密更安全

  3. java代码递归部门结构树

    组织所有部门树,以及条件查询部门树: /** * 组织部门树 * @return */ @Override public List<SxyBranchVO> findAllBranchTr ...

  4. SpringCloud学习笔记(12)----Spring Cloud Netflix之Hystrix断路器的流程和原理

    工作流程(参考:https://github.com/Netflix/Hystrix/wiki/How-it-Works) 1. 创建一个HystrixCommand或HystrixObservabl ...

  5. iptables 简单介绍及应用 Linux防火墙

    iptables 即 Linux防火墙 的简单介绍及使用 iptables生效位置如下图: 其中, 网络防火墙也可以使用一台启用了iptables的Linux主机代替; 路由器或集线器等设施在拓扑中省 ...

  6. 路飞学城Python-Day10(practise)

    作业:现要求你写一个简单的员工信息增删该查程序,需求如下:当然此表在文件存储时可以这样表示1,Alex Li,22,13651054608,IT,2013-04-012,Jack Wang,28,13 ...

  7. 强化学习(3)-----DQN

    看这篇https://blog.csdn.net/qq_16234613/article/details/80268564 1.DQN 原因:在普通的Q-learning中,当状态和动作空间是离散且维 ...

  8. git 常用操作命令行

    mkdir files : 创建一个名字为files的文件夹 cd files : 切换目录到files pwd ; 显示当前所在目录 ls -ah : 查看本地隐藏不可见的文件夹 git init ...

  9. suse 11 sp4 bond 网卡 mode0模式

    开启网卡: ifocnfig eth1 up 点亮网卡ethtool eth1 db2:~ # cat /etc/sysconfig/network/ifcfg-bond0 DEVICE='bond0 ...

  10. Spring学习总结(14)——Spring10种常见异常解决方法

    在程序员生涯当中,提到最多的应该就是SSH三大框架了.作为第一大框架的Spring框架,我们经常使用. 然而在使用过程中,遇到过很多的常见异常,我在这里总结一下,大家共勉. 一.找不到配置文件的异常 ...