Python re模块前的正则表达式常用语法小总结

一、正则表达式:

(1).正则表达式是干什么的

 正则表达式(regular expression)描述了一种字符串匹配的模式(pattern),可以用来检查一个串是否含有某种子串、将匹配的子串替换或者从某个串中取出符合某个条件的子串等。

(2). 正则表达式的的语法

  1.字符

    1. \d    相当于[0-9]  匹配所有数字

      正则表达式:\d

      要匹配的字符:132sjdk464sajdksj21

    2. \w   相当于[A-Za-z_]  匹配所有字符

      正则表达式:\w

      要匹配的字符:132%sjd     k4 64sajdksj21_   @

    3. \s  匹配空格、换行符(\n)、制表符(\t)

    4. \b  边界符 

      正则表达式: ing\b

      要匹配的字符: thing taking tingouing  (匹配有边界的,没有边界的是不会匹配)

    5. \B 非边界

    6. \D 是\d 取反  匹配除数字以外的所有字符

      正则表达式:\D

      要匹配的字符:1545@%6siudaijs sa@

    7. \W 是\w 取反

      正则表达式:\W

      要匹配的字符:1545@%6siudaijs sa@

    8. \S 是\s 取反

      正则表达式:\S

      要匹配的字符:1545@%6siudaijs   sa@    

  2. 量词

    *  取*前面一个字符的零次或多次   

    + 取+前面一个字符的一次或多次

              ?取?前面一个字符的零次或一次  (可以取消正则表达式的贪婪)

    .  取所有的字符包括空格、制表、换行   

    ^ 表示从头开始取

      正则表达式:^\d*

      要匹配的字符:123465sdjhaijeo 454sds21d2s1d5s4

    $ 表示一个字符的结尾

 

      正则表达式:\d*$

 

      要匹配的字符:123465sdjhaijeo 454sds21d2s1d5s445

    | 表示 或可以取两边谁满足的字符串 (如果 | 两边的表达式,后面的包含前面的内容但是还加了其他内容时,要放在前面,不然就匹配不到后面的表达式)

      正则表达式:\d+\.\d+|\d*  (匹配小数或者整数)    如果   |   两边的表达式调换则不能匹配到小数    \d*|\d+\.\d+

      要匹配的字符:123465sdjha2.3ijeo 454sds21d2s1d5s445     /   123465sdjha2.3ijeo 454sds21d2s1d5s445

    {n}  匹配前面字符n次

      正则表达式:\d{3}

      要匹配的字符:123465sdjha2.3ijeo 454sds21d2s1d5s445   

    {n,} 匹配前面字符至少n次

      正则表达式:\d{3,}

      要匹配的字符:123465sdjha2.3ijeo 454sds21d2s1d5s445   

    {n, m} 匹配前面字符n次到m次 (n次到m次之间的都可以)

        正则表达式:\d{2,4}

      要匹配的字符:123465sdjha2.3ijeo 454sds21d2s1d5s445   

    ()可以把多个字符分在一组

       正则表达式:\w+@[0-9A-Za-z]+\.([0-9A-Za-z]*\.)*com    里面还有很多东西没有处理(这里只是想说一下()的作用)

      要匹配的字符:1235456@qq.com    |   1235456@qq.12356.com                  都可以匹配

     []  表示一个字符组

其中 基本量词里面的都有特殊的含义,想要表达他们就要用到转义符 \  把他们转回原来的比如 \$ 就是匹配 $

一般 * . + ? 都具有贪婪性可以加?取消他们的贪婪性

令附:正则表达式查询的网址:http://tool.chinaz.com/regex

 

posted @   浪上了天  阅读(278)  评论(0编辑  收藏  举报
编辑推荐:
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
阅读排行:
· winform 绘制太阳,地球,月球 运作规律
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 上周热点回顾(3.3-3.9)
· AI 智能体引爆开源社区「GitHub 热点速览」
· 写一个简单的SQL生成工具
点击右上角即可分享
微信分享提示