当前位置: 首页 > news >正文

Python(09)正则表达式

特殊字符

1. 基本元字符

.:匹配除换行符以外的任意单个字符。
*:匹配前面的元素零次或多次。
+:匹配前面的元素一次或多次。
?:匹配前面的元素零次或一次。

2. 定量符

{n}:匹配前面的元素恰好 n 次。
{n,}:匹配前面的元素至少 n 次。
{n,m}:匹配前面的元素至少 n 次,但不超过 m 次。

3. 字符类

[abc]:匹配方括号内的任意一个字符(在这个例子中是 a、b 或 c)。
[^abc]:匹配不在方括号内的任意一个字符(在这个例子中是除了 a、b 和 c 以外的任何字符)。
[a-z]:匹配指定范围内的任意一个字符(在这个例子中是从 a 到 z 的任意一个小写字母)。
\d:匹配任意一个数字,等同于 [0-9]。
\D:匹配任意一个非数字字符,等同于 [^0-9]。
\w:匹配任意一个字母数字字符,包括下划线,等同于 [a-zA-Z0-9_]。
\W:匹配任意一个非字母数字字符,包括下划线,等同于 [^a-zA-Z0-9_]。
\s:匹配任意一个空白字符,包括空格、制表符、换页符等,等同于 [ \t\n\r\f\v]。
\S:匹配任意一个非空白字符,等同于 [^ \t\n\r\f\v]。

4. 锚点

^:匹配输入字符串的开始位置。
$:匹配输入字符串的结束位置。
\b:匹配单词边界。
\B:匹配非单词边界。

5. 分组和引用

(abc):将 abc 视为一个整体进行匹配,并捕获该分组。
(?:abc):将 abc 视为一个整体进行匹配,但不捕获该分组。
\1、\2 等:引用之前捕获的分组。

6. 选择

a|b:匹配 a 或 b。

7. 转义字符

\:用于转义特殊字符,例如 . 匹配实际的点号,而不是任意字符。

常用方法

  • 1.‌re.search(pattern, string[, flags])‌
    在字符串中搜索第一个与正则表达式模式匹配的结果,返回一个Match对象,如果没有找到匹配项则返回None。
  • 2.‌re.match(pattern, string[, flags])‌
    从字符串的起始位置匹配一个模式,如果不是起始位置匹配成功的话,match()就返回None。
  • 3.‌re.fullmatch(pattern, string[, flags])‌
    如果整个字符串完全匹配正则表达式模式,则返回一个Match对象,否则返回None。
  • 4.‌re.findall(pattern, string[, flags])‌
    返回字符串中所有与正则表达式模式匹配的子串,作为一个列表返回。
  • 5.‌re.finditer(pattern, string[, flags])‌
    返回一个迭代器,其中每个元素都是一个Match对象,对应于字符串中所有与正则表达式模式匹配的部分。
  • 6.‌re.sub(pattern, repl, string[, count, flags])‌
    将字符串中所有与正则表达式模式匹配的部分替换为指定的字符串,并返回替换后的字符串。
  • 7.‌re.split(pattern, string[, maxsplit, flags])‌
    根据正则表达式模式分割字符串,返回一个列表,包含分割后的各个部分。
  • 8.‌re.compile(pattern[, flags])‌
    编译正则表达式模式,返回一个正则表达式对象,可以用于后续的匹配操作,提高效率。
http://www.dtcms.com/a/296821.html

相关文章:

  • 无人机云台跟踪目标实现
  • springboot项目建立sse接口
  • tokenID和位置嵌入有关系吗,qwen 模型使用时候仅仅有tokenid 映射为向量,位置编码在哪里
  • C++的虚基类?
  • 黑马头条项目详解
  • cmake应用:集成gtest进行单元测试
  • MUX同步器
  • 人工智能概念:常用的模型压缩技术(剪枝、量化、知识蒸馏)
  • 一篇文章了解HashMap和ConcurrentHashMap的扩容机制
  • ESP32入门实战:PC远程控制LED灯完整指南
  • pandas库的数据导入导出,缺失值,重复值处理和数据筛选,matplotlib库 简单图绘制
  • AD一张原理图分成多张原理图
  • iview Select的Option边框显示不全(DatePicker也会出现此类问题)
  • rust-参考与借用
  • 爬虫逆向--Day12--DrissionPage案例分析【小某书评价数据某东评价数据】
  • MySQL零基础教程增删改查实战
  • java后端
  • mujoco playground
  • DBA常用数据库查询语句
  • DevOps 完整实现指南:从理论到实践
  • 论文阅读:《Many-Objective Evolutionary Algorithms: A Survey. 》多目标优化问题的优化目标评估的相关内容介绍
  • Android LiveData 全面解析:原理、使用与最佳实践
  • Rust生态中的LLM实践全解析
  • 【C# 找最大值、最小值和平均值及大于个数和值】2022-9-23
  • 项目质量如何提升?
  • 教育培训系统源码如何赋能企业培训学习?功能设计与私有化部署实战
  • 使用 Vue 实现移动端视频录制与自动截图功能
  • MySQL---索引、事务
  • Docker 打包Vue3项目镜像
  • 互联网广告中的Header Bidding与瀑布流的解析与比较