【正则表达式】正则表达式语法规则

news/2025/3/15 5:55:37/

正则表达式语法规则

1.普通字符

字符描述
[ABC]匹配 […] 中的所有字符
[^ABC]匹配除了 […] 中字符的所有字符
[A-Z][A-Z] 表示一个区间,匹配所有大写字母,[a-z] 表示所有小写字母
.匹配除换行符以外的任意字符
[\s\S]匹配所有。\s 是匹配所有空白符,包括换行,\S 非空白符,不包括换行
\w匹配字母、数字、下划线。等价于 [A-Za-z0-9_]

2.非打印字符

字符描述
\cx匹配由 x 指明的控制字符
\f匹配一个换页符
\n匹配一个换行符
\r匹配一个回车符
\s匹配任何空白字符,包括空格、制表符、换页符等等。等价于 [ \f\n\r\t\v]
\S匹配任何非空白字符。等价于 [^ \f\n\r\t\v]
\t匹配一个制表符
\v匹配一个垂直制表符

3.特殊字符

特别字符描述
$匹配输入字符串的结尾位置
()标记一个子表达式的开始和结束位置
*匹配前面的子表达式 000 次或多次,要匹配 * 字符,请使用 \*
+匹配前面的子表达式 111 次或多次,要匹配 + 字符,请使用 \+
.匹配除换行符 \n 之外的任何单字符。要匹配 . ,请使用 \.
[标记一个中括号表达式的开始
?匹配前面的子表达式 000 次或 111
\将下一个字符标记为或特殊字符、或原义字符、或向后引用、或八进制转义符
^匹配输入字符串的开始位置,除非在方括号表达式中使用,当该符号在方括号表达式中使用时,表示不接受该方括号表达式中的字符集合
{标记限定符表达式的开始
|指明两项之间的一个选择

4.限定符

代码说明
*匹配前面的子表达式 000 次或多次
+匹配前面的子表达式 111 次或多次
?匹配前面的子表达式 000 次或 111
{n}nnn 是一个非负整数。匹配确定的 nnn
{n,}nnn 是一个非负整数。至少匹配 nnn 次。
{n,m}mmmnnn 均为非负整数,其中 n<=mn <= mn<=m。最少匹配 nnn 次且最多匹配 mmm 次。

5.定位符

代码说明
^匹配输入字符串开始的位置
$匹配输入字符串结尾的位置
\b匹配一个单词边界,即字与空格间的位置
\B非单词边界匹配
代码说明
?=exp1(?=exp2):查找 exp2 前面的 exp1
?<=(?<=exp2)exp1:查找 exp2 后面的 exp1
?!exp1(?!exp2):查找后面不是 exp2exp1
?<!(?<!exp2)exp1:查找前面不是 exp2exp1

6.修饰符

修饰符含义描述
iignore,不区分大小写将匹配设置为不区分大小写,搜索时不区分大小写
gglobal,全局匹配查找所有的匹配项
mmulti line,多行匹配使边界字符 ^$ 匹配每一行的开头和结尾,记住是多行,而不是整个字符串的开头和结尾
s特殊字符圆点 . 中包含换行符 \n默认情况下的圆点 . 是匹配除换行符 \n 之外的任何字符,加上 s 修饰符之后,. 中包含换行符 \n

http://www.ppmy.cn/news/31411.html

相关文章

机器看世界

博主简介 博主是一名大二学生&#xff0c;主攻人工智能研究。感谢让我们在CSDN相遇&#xff0c;博主致力于在这里分享关于人工智能&#xff0c;c&#xff0c;Python&#xff0c;爬虫等方面知识的分享。 如果有需要的小伙伴可以关注博主&#xff0c;博主会继续更新的&#xff0c…

Git设置SSH Key

一、git 配置 &#xff08;1&#xff09;打开 git 命令窗口 &#xff08;2&#xff09;配置用户名&#xff08;填自己的姓名&#xff09; git config --global user.name “xinyu.xia” &#xff08;3&#xff09;配置用户邮箱&#xff08;填自己的邮箱&#xff0…

品牌营销 | 学习如何最大限度地发挥品牌营销的作用

您是否想过如何最大限度地发挥品牌营销的潜力&#xff1f;这是一项艰巨的挑战&#xff0c;通过了解品牌营销的基本组成部分&#xff0c;您可以成功地推广您的品牌。 &#xff08;图源&#xff1a;Pixabay&#xff09; 品牌营销的基本组成部分 你需要做什么来发展稳固的品牌&am…

MySQL DDL表操作【入门到精通】

目录 一、查询创建 1、查询当前数据库所有表 2、查看指定表结构 3、查询指定表的建表语句 4、创建表结构 二、数据类型 1、数值类型 2、字符串类型 3、日期时间类型 三、表操作-案例 设计一张员工信息表&#xff0c;要求如下&#xff1a; 对应的建表语句如下&#…

一文教会你如何简单使用Fegin进行远程服务调用

文章目录1、fegin的基本介绍2、fegin的基本使用步骤3、项目中的实际运用4、测试前言在分布式微服务中&#xff0c;少不了会进行不同服务之间的相互调用&#xff0c;比如A服务要调用B服务中的接口&#xff0c;如何简单方便的实现呢&#xff1f;fegin可以来帮助。 1、fegin的基本…

vue+echarts.js 实现中国地图——根据数值表示省份的深浅——技能提升

最近在写后台管理系统&#xff0c;遇到一个需求就是 中国地图根据数值 展示深浅颜色。 效果图如下&#xff1a; 直接上代码&#xff1a; 1.html部分 <div id"Map"></div>2.css部分——一定要设置尺寸 #Map {width: 100%;height: 400px; }3.js部分 …

QT使用QListWidget显示多张图片

Qt系列文章目录 文章目录Qt系列文章目录前言一、QListWidget 和 QListView 的差异二、显示效果1.操作工作区界面1.主界面头文件2. 主界面实现界面2.左边图片目录展示界面1.图片目录头文件2.图片目录实现文件2.属性窗口区1.属性窗口头文件2.属性窗口实现文件3 源码下载前言 QLi…

前端优化,webpack打包删除无用文件,并附上批量删除文件脚本!非常好用

前言 大家可能在webpack打包项目过程中&#xff0c;常遇见一些无用的图片&#xff0c;js文件&#xff0c;怎样能够自动检测哪些是无用的文件呢&#xff1f;本文中介绍使用插件useless-files-webpack-plugin查找无用文件&#xff0c;在terminal中删除&#xff0c;附加bat批量删…