码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • 正则表达式基础


    目录

            1. 字符组:([])允许匹配一组可能出现的字符。

    2. 区间:连字符 ( - ) 代表区间

    3. 匹配特殊字符

    4. 取反(^)

    5. 快捷方式

    6. 开始与结束

    7. 可选字符(?)

    8. 匹配多组数据({N})

    9. 重复区间({M,N})

    10. 开闭区间


    1. 字符组:([])允许匹配一组可能出现的字符。


        使用方式:用中括号 [ ] 表示
        例如:文本是china和China时
        解:

     \ [Cc]hina \ 


    2. 区间:连字符 ( - ) 代表区间


        要匹配任意数字可以使用\[0-9]\ ;
        如果想要匹配所有小写字母,可以写成\[a-z]\;
        想要匹配所有大写字母可以写成\[A-Z]\。
        例如:文本:dfghj、ASDA、09876
        解:

    \[A-Za-z0-9]\


    3. 匹配特殊字符


        使用转义,即反斜杠 ( \ ) 加需要被转义的符号
        例如:三组文本: ------、[]、()
        解:

    \[\-\s\(]\


    4. 取反(^)


        即匹配除该区间之外的所有元素
        例如:文本是bu[-!@
        解:

    \^0-9\


    5. 快捷方式


        匹配数字 ( \d )是0-9的缩写,匹配任意单词字符 ( \w )是A-Za-z的缩写 
        例如:三组文本:0098765xcfghjkFGHJK、asdf09876、Adjshb4567
        解:

    \[\d\w]\


        匹配空白(\s)、单词边界(\b)
        例如:文本是master
        解:

    \\bmaster\b\


        注意:快捷方式中字母d、w、s大写表示取反
     
       任意字符(.): 注意不能匹配换行符(\n)


    6. 开始与结束


        正则表达式中 ^指定的是一个字符串的开始,$指定的是一个字符串的结束。
        例如:要匹配以http开头的文本
        解:

    \^http\


        例如:要匹配以o结尾的文本
        解:

    \o$\


    7. 可选字符(?)


        有时,想要匹配一个单词的不同写法,比如color和colour。
        在u后面加一个?,这意味着正则表达式引擎将会期望该字符出现零次或一次。
        解:

    \colou?r\


    8. 匹配多组数据({N})


        在此之前,我们只匹配一组数据,在实际开发中需要匹配多组数据,这就需要({N}),    N表示匹配N次
        例如:文本是电话号码:0001-8888888
        解:

    \\d{4}-\d{7}\


    9. 重复区间({M,N})


        用于不知道区间长度的场景,比如身份证有15位也有18位
        例如:两组文本:567、7654
        解:

    \{3, 4}\


        注意:在本例中结果优先匹配4位,因为该正则表达式默认贪婪模式,若要优先搜索3        位,要在{}后面加一个问号(?), 意为懒惰模式


    10. 开闭区间


        在重复区间中,如果只写{M,}就表示从M一直递增,{,N}就表示从N一直递减
        其中 * 等价于 {0,},+ 等价于 {1,}。


     

  • 相关阅读:
    商场做小程序商城的作用是什么?
    apollo docker搭建
    基于智能分析网关的小区电动车AI检测方案设计与应用
    【算法训练-二叉树 二】【重建二叉树】依据前序与中序遍历序列重建二叉树
    基于C语言仿真实现的粒子火焰系统
    qt day 5
    REST-assured简介
    Linux更新g++
    Python 读取PostgreSQL的geometry字段时,获取geometry的中心点
    基于STC12C5A60S2系列1T 8051单片机的TM1638键盘数码管模块的数码管显示与TM1638芯片连接的按键的按键值应用
  • 原文地址:https://blog.csdn.net/weixin_57269725/article/details/126065612
  • 最新文章
  • 沪漂五周年了:我越来越迷茫了
    Agentic Skill Routing 实战:别再把所有 Skill 塞进 AI Agent 上下文
    MySQL-Seconds_behind_master的精度误差
    [MAF预定义ChatClient中间件-03]CachingChatClient——利用缓存省钱省时间
    AI的至暗历史:从万众期待到被政府撤资,AI的两次死亡徘徊
    Agent OS :五种驯服不确定性的范式
    PortSwigger SQL注入LAB11
    数据库即时编译JIT
    [Begin]AI Learn Data Day 0
    深度学习进阶(二十七)现代 LLM 的核心架构设计其二:SwiGLU
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
小工具 小游戏
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1

京公网安备 11010502049817号