Python3基础笔记---re模块
2024-08-31 13:34:43
参考博客: 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'))
最新文章
- 漫谈JVM
- Mac安装软件报“打不开。。。,因为它来自身份不明的开发者”的解决办法
- Day 6
- MathType 公式后的空格问题
- Pythonj~module
- linux初始化配置---主机名、关闭防火墙、关闭selinux
- 每日英语:What To Expect To Wear When You're Expecting
- VirtualBox检查更新失败解决办法
- C语言刷新缓冲区(转载)
- C++程序设计教程学习(1)-第一部分 编程基础
- Ant学习总结1
- Oracle-01:基础命令小结
- Java进阶篇设计模式之四 -----适配器模式和桥接模式
- JSONP以及端口
- PHP服务器Apache与Nginx的对比分析
- C# 关闭进程的时候总是捕捉到System.Threading.ThreadAbortException: 正在中止线程
- NPOI 2.1.1 系列(2) 使用NPOI读取List或者datatable数据生成 Excel文档 ;Npoi生成 xlsx 2007以上文档
- 机器学习性能度量指标:AUC
- OCP最新题库收集,新版052考题及答案整理-19
- shell-day1