21.正则表达式

正则表达式

文章目录

  • 正则表达式
    • [1. 正则表达式分类](#1. 正则表达式分类)
    • [2. 基本正则表达式](#2. 基本正则表达式)
    • [3. 扩展正则表达式](#3. 扩展正则表达式)

1. 正则表达式分类

正则表达式:REGEXP,REGular EXPression。

正则表达式分为两类:

  • Basic REGEXP(基本正则表达式)
  • Extended REGEXP(扩展正则表达式)

2. 基本正则表达式

perl 复制代码
//元字符
    .           //任意单个字符
    []          //匹配指定范围内的任意单个字符
    [^]         //匹配指定范围外的任意单个字符
//匹配次数(贪婪模式)
    *           //匹配其前面的任意单个字符任意次
    .*          //任意长度的任意字符
    \?          //匹配其前面的任意单个字符1次或0次
    \+          //匹配其前面的任意单个字符至少1次
    \{m,n\}     //匹配其前面的任意单个字符至少m次,至多n次
//位置锚定
    ^           //锚定行首,此字符后面的任意单个字符必须出现在行首
    $           //锚定行尾,此字符前面的任意单个字符必须出现在行尾
    ^$          //空白行
    \<或\b       //锚定词首,其后面的任意单个字符必须作为单词首部出现
    \>或\b       //锚定词尾,其前面的任意单个字符必须作为单词尾部出现
/分组
    \(\)
    例:\(ab\)*
    //后向引用
        \1      //引用第一个左括号以及与之对应的右括号所包括的所有内容
        \2      //引用第二个左括号以及与之对应的右括号所包括的所有内容

3. 扩展正则表达式

perl 复制代码
//字符匹配
    .       //匹配任意单个字符
    []      //匹配指定范围内的任意单个字符
    [^]     //匹配指定范围外的任意单个字符
//次数匹配
    *       //匹配其前面的任意单个字符任意次
    ?       //匹配其前面的任意单个字符1次或0次
    +       //匹配其前面的任意单个字符至少1次
    {m,n}   //匹配其前面的任意单个字符至少m次,至多n次

//位置锚定
    ^       //锚定行首,此字符后面的任意单个字符必须出现在行首
    $       //锚定行尾,此字符前面的任意单个字符必须出现在行尾
    ^$      //空白行
    \<或\b       //锚定词首,其后面的任意单个字符必须作为单词首部出现
    \>或\b       //锚定词尾,其前面的任意单个字符必须作为单词尾部出现
//分组
    ()      //分组
    \1,\2,\3,....
   例:(ab)*
    //后向引用
        \1      //引用第一个左括号以及与之对应的右括号所包括的所有内容
        \2      //引用第二个左括号以及与之对应的右括号所包括的所有内容
//或者
    |       //or 默认匹配|的整个左侧或者整个右侧的内容
    //例:C|cat表示C或者cat,要想表示Cat或者cat则需要使用分组,如(C|c)at
整个左侧或者整个右侧的内容
    //例:C|cat表示C或者cat,要想表示Cat或者cat则需要使用分组,如(C|c)at
相关推荐
人生在勤,不索何获-白大侠2 天前
day15——Java常用API(二):常见算法、正则表达式与异常处理详解
java·算法·正则表达式
虎皮辣椒小怪兽2 天前
正则表达式
正则表达式
Hilaku2 天前
用“人话”讲明白10个最常用的正则表达式
前端·javascript·正则表达式
feifeigo12312 天前
Java 正则表达式高级用法
java·mysql·正则表达式
决战软件之巅16 天前
Python 正则表达式
正则表达式
小浪学编程16 天前
C#学习13——正则表达式
学习·正则表达式
yuanyxh16 天前
《精通正则表达式》精华摘要
前端·javascript·正则表达式
red润18 天前
被转义字符麻痹的一天:理解转义字符串
前端·javascript·正则表达式
叶 落20 天前
[Java 基础]正则表达式
java·正则表达式·java 基础
fs哆哆22 天前
在VB.net中,用正则表达式方法清除干扰符号方法
开发语言·正则表达式·c#·.net