首页 > 其他分享 >正则表达式-(4)匹配模式

正则表达式-(4)匹配模式

时间:2023-02-08 21:56:17浏览次数:40  
标签:匹配 正则表达式 修饰符 模式 注释 正则 大小写

所谓匹配模式,指的是正则中一些改变元字符匹配行为的方式,比如匹配时不区分英文字母大小写。常见的匹配模式有 4 种,分别是不区分大小写模式、点号通配模式、多行模式和注释模式。

一、不区分大小写模式(Case-Insensitive)

不区分大小写是匹配模式的一种,当把模式修饰符放在整个正则前面时,就表示整个正则表达式都是不区分大小写的。模式修饰符是通过(? 模式标识)的方式来表示的。 我们只需要把模式修饰符放在对应的正则前,就可以使用指定的模式了。

 

1.不区分大小写模式的指定方式,使用模式修饰符 (?i);

 

2.修饰符如果在括号内,作用范围是这个括号内的正则,而不是整个正则;

3.使用编程语言时可以使用预定义好的常量来指定匹配模式。

二、点号通配模式

正则中提供了一种模式,让英文的点(.)可以匹配上包括换行的任何字符。这个模式就是点号通配模式,有很多地方把它称作单行匹配模式,但这么说容易造成误解,毕竟它与多行匹配模式没有联系。

单行的英文表示是Single Line,单行模式对应的修饰符是(?s),用 the cat 来举一个点号通配模式的例子。

 

三、多行匹配模式

多行模式的作用在于,使 ^ 和 $ 能匹配上每行的开头或结尾,我们可以使用模式修饰符号 (?m) 来指定这个模式。

 

四、注释模式

。我们在写代码的时候,通常会在一些关键的地方加上注释,让代码更易于理解。很多语言也支持在正则中添加注释,让正则更容易阅读和维护,这就是正则的注释模式。正则中注释模式是使用 (?#comment) 来表示。

(\w+)(?#word) \1(?#word repeat again)

 

标签:匹配,正则表达式,修饰符,模式,注释,正则,大小写
From: https://www.cnblogs.com/wsmbszyn/p/17103442.html

相关文章

  • 栈的应用-括号匹配问题
    #include<iostream>usingnamespacestd;#defineMaxSize10typedefstruct{ chardata[MaxSize]; inttop;}SqStack;voidInitStack(SqStack&S);boolIsEmpty(SqStack&......
  • Linux几种网络模式介绍
    简单介绍Linux几种网络模式​ 虚拟化层次:​ 打开vmware虚拟机,我们可以在选项栏的“编辑”下的“虚拟网络编辑器"中看到VMnet0(桥接模式)、VMnet1(仅主机模式)、V......
  • 匹配滤波增益matlab仿真附报告
    作者简介:热爱科研的Matlab仿真开发者,修心和技术同步精进,matlab项目合作可私信。......
  • 设计模式
    一.设计模式分为1.创建型模式2.结构型模式3.行为型模式二.创建型模式1.简单工厂(工厂方法)模式:隐藏创建对象的细节,在使用时才选择创建哪个对象(建议使用反射);就是一个......
  • 单例模式
    1、单例模式1)懒汉式多线程的情况下就会出问题,例如两个线程同时判断Instance是否为空,此时Instance还没创建好,那么两者都会创建一个实例2)在1)的基础上加上同步锁每次通......
  • javaScript ES6 - call,apply,bind 修改this指向,开启严格模式
    1.call与applycall与apply都是执行一次修改的方法,不过apply的第二个参数为数组格式//构造函数functionHuman(id,name){this.id=id;this.name=name;}//方法f......
  • 在 Apple silicon Mac 上 DFU 模式修复或恢复 macOS 固件
    搭载Apple芯片的Mac电脑DFU模式全新安装macOSVentura请访问原文链接:https://sysin.org/blog/apple-silicon-mac-dfu/,查看最新版。原创作品,转载请保留出处。作者......
  • 19正则表达式
      用于定义各种模糊筛选规则。  查找空行:    指定开头是a,结尾是bash,中间任意:      查特殊字符出现文件,需要使用转义字符,并且用’‘引起来。......
  • 2022-2023 ICPC, NERC, Northern Eurasia D - Dominoes 匈牙利 | 二分图匹配
    考虑黑白染色,i+j%2==1的为黑格一块多米诺就要覆盖一黑一白,相当于一个匹配那全覆盖也就是存在完美匹配(应该是网络流经典的trick?讨论选取的点来自同一边和两边1.同一边......
  • 线程安全的单列模式(4种)
    1.不使用同步锁publicclassSingleton{privatestaticSingletons=newSingleton();//直接初始化一个实例对象privateSingleton(){///private类型的构造函数......