python re 正则表达式库的使用

简介: python re 正则表达式库的使用

  .           匹配任何字符,除了\n,占位符
    *           匹配前一个字符0次或无限次
    +           匹配前一个字符1次或无限次
    ?           匹配前一个字符0次或1次
    .*          贪心算法
    .*?         非贪心算法
    ()          括号内的数据作为结果返回
    (\d+)       匹配纯数字
    []          对单个字符给出取值范围,    [abc]:a.b.c    [a-z]:a到z字符
    [^]         对单个字符排除范围,        [^abc]:非a或b或c
    |           或,                      abc|def:abc或def
    {m}         扩展前一个字符m次,         ab{2}c:abbc
    ^           匹配字符串开头
    $           匹配字符串结尾
    \d          数字,等价于[0-9]

2.正则表达式常用方法

findall:匹配符合规则的内容,返回结果的列表

search: 匹配并提取第一个符合规则的内容,返回一个正则表达式对象(object)
         .group(2)   取第二个
         匹配一个内容时,用search,提高效率

sub:    替换符合规律的内容,返回替换后的值
         re.sub("xx(.*?)xx","替换为该内容", 原字符串)

3.列子

a = "xuufhxxixxaasfasxxlovexxasdasdaxxyouxxasdasa"

print(re.findall("xx.*xx", a))
    >>>['xxixxaasfasxxlovexxasdasdaxxyouxx']

print(re.findall("xx.*?xx", a))
    >>>['xxixx', 'xxlovexx', 'xxyouxx']

print(re.findall("xx(.*?)xx", a))
    >>>['i', 'love', 'you']
  1. re.S的使用
  a = """xuufhxxixxaasfasxx
     lovexxasdasdaxxyouxxasdasa"""

  print(re.findall("xx(.*?)xx", a, re.S))
 >>>['i', 'love', 'you']

 作用:使‘.’号匹配换行符(\n)
 扩展:  re.I   忽略大小写
      re.M   ^字符能将每行当作字符串匹配开始

5.当表达式有特殊符号时,用r转义

r('正则表达式')

6.正则表达式的两种使用方法

# 一次操作
a = re.search(r'xxx', str)

# 正则表达式需要多次使用
b = re.compile(r'xxx')
a = b.search(str)
目录
相关文章
|
10月前
|
存储 人工智能 测试技术
如何使用LangChain的Python库结合DeepSeek进行多轮次对话?
本文介绍如何使用LangChain结合DeepSeek实现多轮对话,测开人员可借此自动生成测试用例,提升自动化测试效率。
2204 125
如何使用LangChain的Python库结合DeepSeek进行多轮次对话?
|
10月前
|
监控 数据可视化 数据挖掘
Python Rich库使用指南:打造更美观的命令行应用
Rich库是Python的终端美化利器,支持彩色文本、智能表格、动态进度条和语法高亮,大幅提升命令行应用的可视化效果与用户体验。
927 0
|
9月前
|
数据可视化 关系型数据库 MySQL
【可视化大屏】全流程讲解用python的pyecharts库实现拖拽可视化大屏的背后原理,简单粗暴!
本文详解基于Python的电影TOP250数据可视化大屏开发全流程,涵盖爬虫、数据存储、分析及可视化。使用requests+BeautifulSoup爬取数据,pandas存入MySQL,pyecharts实现柱状图、饼图、词云图、散点图等多种图表,并通过Page组件拖拽布局组合成大屏,支持多种主题切换,附完整源码与视频讲解。
876 4
【可视化大屏】全流程讲解用python的pyecharts库实现拖拽可视化大屏的背后原理,简单粗暴!
|
9月前
|
传感器 运维 前端开发
Python离群值检测实战:使用distfit库实现基于分布拟合的异常检测
本文解析异常(anomaly)与新颖性(novelty)检测的本质差异,结合distfit库演示基于概率密度拟合的单变量无监督异常检测方法,涵盖全局、上下文与集体离群值识别,助力构建高可解释性模型。
655 10
Python离群值检测实战:使用distfit库实现基于分布拟合的异常检测
|
11月前
|
运维 Linux 开发者
Linux系统中使用Python的ping3库进行网络连通性测试
以上步骤展示了如何利用 Python 的 `ping3` 库来检测网络连通性,并且提供了基本错误处理方法以确保程序能够优雅地处理各种意外情形。通过简洁明快、易读易懂、实操性强等特点使得该方法非常适合开发者或系统管理员快速集成至自动化工具链之内进行日常运维任务之需求满足。
696 18
|
C++ Python
137 python高级 - 正则表达式(re模块的高级用法)
137 python高级 - 正则表达式(re模块的高级用法)
257 0
|
Python
131 python高级 - 正则表达式(re模块操作)
131 python高级 - 正则表达式(re模块操作)
182 0
|
大数据 C++ Python
python正则表达式与re模块
python正则表达式与re模块
300 0
|
存储 索引 Python
【100天精通python】Day23:正则表达式,基本语法与re模块详解示例
【100天精通python】Day23:正则表达式,基本语法与re模块详解示例
340 0
|
Python
告别死记硬背:掌握Python正则表达式re模块的高效应用&[面向百度编程]
Python中正则表达式的高效应用,通过内置的`re`模块,讲解了如何匹配、提取和替换字符串,并提供了相关示例代码,同时提倡通过实践来掌握正则表达式的使用,而不是仅仅依赖网络搜索。
288 1

推荐镜像

更多