首页 > 其他分享 >正则表达式四

正则表达式四

时间:2023-02-04 16:36:38浏览次数:36  
标签:匹配 正则表达式 区分 修饰符 模式 正则 大小写

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

不区分大小写是匹配模式的一种。当我们把模式修饰符放在整个正则前面时,就表示整个正则表达式都是不区分大小写的。模式修饰符是通过 (? 模式标识) 的方式来表示的。

在不区分大小写模式中,由于不分大小写的英文是 Case-Insensitive,那么对应的模式标识就是 I 的小写字母 i,所以不区分大小写的 cat 就可以写成 (?i)cat。

 

 

 

到这里我简单总结一下不区分大小写模式的要点:

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

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

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

点号通配模式(Dot All)

单行的英文表示是 Single Line,单行模式对应的修饰符是 (?s)

多行匹配模式(Multiline)

^匹配整个字符串的开头,$ 匹配整个字符串的结尾。多行匹配模式改变的就是 ^ 和 $ 的匹配行为。

 

 

 

 

 

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

 

 


 

注释模式(Comment)

正则中注释模式是使用 (?#comment) 来表示。

 


 

 

不区分大小写模式,它可以让整个正则或正则中某一部分进行不区分大小写的匹配。

点号通配模式也叫单行匹配,改变的是点号的匹配行为,让其可以匹配任何字符,包括换行。

多行匹配说的是 ^ 和 $ 的匹配行为,让其可以匹配上每行的开头或结尾。

注释模式则可以在正则中添加注释,让正则变得更容易阅读和维护。

 

 

 

们来做一个小练习吧。HTML 标签是不区分大小写的,比如我们要提取网页中的 head 标签中的内容,用正则如何实现呢?

 

 

(?si)<head(\s(profile|accesskey|class|contenteditable|contextmenu|data-[\w\d]|dir|draggable|dropzone|hidden|id|lang|spellcheck|style|tabindex|title|translate)(=".*?")?)*>.*<\/head>

(?si)<head(.*?)>.*<\/head>

标签:匹配,正则表达式,区分,修饰符,模式,正则,大小写
From: https://www.cnblogs.com/anniedaniel/p/17091818.html

相关文章

  • 正则表达式三
    分组与编号括号在正则中可以用于分组,被括号括起来的部分“子表达式”会被保存成一个子组。不保存子组在括号里面的会保存成子组,但有些情况下,你可能只想用括号将某些部分......
  • 正则表达式二
     在这6种元字符中,我们可以用{m,n}来表示(*)(+)(?)这3种元字符:  贪婪与非贪婪模式。这两种模式都必须满足匹配次数的要求才能匹配上。贪婪模式,简单说就是尽可能......
  • 第24章 使用正则表达式解析文本文件
    第24章使用正则表达式解析文本文件正则表达式(regularexpression,或regex)能够非常有效地进行文本解析,你经常会在UNIX或Linux操作系统中用到。24.2正则表达式入门......
  • javascript的正则表达式
    什么是正则表达式?正则表达式是构成搜索模式(searchpattern)的字符序列。当您搜索文本中的数据时,您可使用搜索模式来描述您搜索的内容。正则表达式可以是单字符,或者更复杂......
  • js 正则表达式 匹配除汉字、字母、数字、逗号、句号、括号外的特殊字符(用来规范输入内
    /[^\u4e00-\u9fa5a-zA-Z\d,.,。()]+/其中\u4e00-\u9fa5匹配汉字,a-zA-Z匹配字母,\d匹配数字,,.,。()匹配逗号、句号或括号,^表示非,+表示尽可能多的匹配。letnameReg=/^[a-zA-Z0-......
  • 正则表达式一
    1、元字符的概念我们提到了正则常见的三种功能,它们分别是:校验数据的有效性、查找符合要求的文本以及对文本进行切割和替换等操作。    1.特殊单字符比如英文的......
  • Mastering Regular Expressions(精通正则表达式) 阅读笔记:前言
    GeneralConcept(一般概念)Ifyoumasterthegeneralconceptofregularexpressions,it'sashortsteptomasteringaparticularimplementation.如果你掌握了......
  • Python正则表达式匹配一段英文中包含关键字的句子
    1.问题/需求在含有多行文字的英文段落或一篇英文中查找匹配含有关键字的句子。例如在以下字符串:text='''TodayIregisteredmypersonalbloginthecnblogsandw......
  • 【Regex】判断密码强度的正则表达式
    原文地址https://www.cnblogs.com/younShieh/p/17082522.html❤如果本文对你有所帮助,不妨点个关注和推荐呀,这是对笔者最大的支持~❤ 需求  最近在最做一个软件的注......
  • MySQL(三)用正则表达式搜索
    正则表达式是用来匹配文本的特殊的串(字符集合),将一个模式(正则表达式)与一个文本串进行比较;所有种类的程序设计语言、文本编辑器、操作系统等都支持正则表达式,正则表达式用正则......