正则表达式与Pyhton

一、正则表达式的规则

1、支持普通字符匹配

2、元字符,一个符号匹配一堆字符

  1. \d 匹配数字
  2. \w 匹配数字、字母、下划线
  3. \D \d的取反,除了数字全部匹配
  4. \W \w的取反
  5. abc\] 匹配字母a、b、c

  6. . 匹配除了换行符之外的所有内容

3、量词 --- 控制元字符出现的次数

    • 前面的元字符出现一次或多次
  1. * 前面的元字符出现0次或多次(贪婪匹配)
  2. ? 前面的元字符出现0次或多次(非贪婪)

4、惰性匹配 .*?

示例:玩吃鸡游戏,晚上一起玩游戏,干嘛呢?打游戏啊

玩.*游戏 匹配结果:玩吃鸡游戏,晚上一起玩游戏,干嘛呢?打游戏

玩.*?游戏 匹配结果:(1)玩吃鸡游戏 (2)玩游戏

二、python正则re模块

1、res = re.findall(r"正则表达式", "原始文本") ---> 拿到所有匹配结果,存为列表

2、res = re.search(r"正则表达式", "原始文本") ---> 拿到第一个匹配结果就返回

通过res.group()查看结果

3、res = re.finditer(r"正则表达式", "原始文本") ---> 拿到所有结果,放到迭代器里(原始文本较大时节约内存)

4、预加载

obj = re.compile(r"正则表达式")

re.findall("原始文本") 。。。。

5、(?P<name>.*?) ---> 将.*?所匹配的内容起名为name,可通过res.group(name)查看

相关推荐
github_czy1 分钟前
Python 函数式编程利器:Partial 与 ParamSpec 技术解析
python·fastapi
IT小哥哥呀2 分钟前
实战!【一个企业知识库的逐步搭建】持续更新ing
python·ai·大模型·知识库·chunk·向量搜索·weknora
前端小趴菜~时倾5 分钟前
自我提升-python爬虫学习:day05-函数与面向对象编程
爬虫·python·学习
Thomas.Sir10 分钟前
第五章:Python3 之 条件、循环和其他语句
python
凌云之程18 分钟前
避坑宝典:PyTorch最简安装路径(含CUDA + VSCode + 中文手册)
pytorch·python·conda·安装
WHS-_-202232 分钟前
LDM代码学习日记
ide·python·pycharm
凌盛羽36 分钟前
使用python绘图分析电池充电曲线
开发语言·python·stm32·单片机·fpga开发·51单片机
互联网时光机1 小时前
TikToken 使用教程:从原理到实战,一文搞懂 OpenAI 的文本分词利器
人工智能·python
zzwq.1 小时前
Anaconda创建虚拟环境以及与pycharm关联
python·pycharm
ZTLJQ1 小时前
数据的另一面:Python中NoSQL数据库完全解析
开发语言·python·nosql