正则表达式中^的用法

正则表达式中^的用法

1.用法一: 限定开头

文档上给出了解释是匹配输入的开始,如果多行标示被设置成了true,同时会匹配后面紧跟的字符

比如 /^A/会匹配"An e"中的A,但是不会匹配"ab A"中的A

比如(\s|^)表示空字符串或字符串的开始。

2.用法二:(否)取反

当这个字符出现在一个字符集合模式的第一个字符时,他将会有不同的含义。

比如: /\^a-z\\s/会匹配"my 3 sisters"中的"3" 这里的"^"的意思是字符类的否定,上面的正则表达式的意思是匹配不是(a到z和空白字符)的字符。

什么时候"^"是否定字符,什么时候是匹配开始行

1.表示限定开头的示例

python 复制代码
/[(^\s+)(\s+$)]/g
(^cat)$
(^cat$)
^(cat)$
^(cat$)

2.表示否定的示例

\^a // 表示"匹配除了a的任意字符"。

\^a-zA-Z0-9 // 表示"找到一个非字母也非数字的字符"。

\^abc // 表示"找到一个插入符或者a或者b或者c"。

3. 总结:

复制代码
1 .只要是"^"这个字符是在中括号"[ ]"中被使用的话就是表示字符类的否定,如果不是的话就是表示限定 开头。
2 .这里说的是直接在"[ ]"中使用,不包括嵌套使用。
3 .其实也就是说"[ ]"代表的是一个字符集,"^"只有在字符集中才是反向字符集的意思。
相关推荐
SelectDB11 小时前
阶跃星辰基于 SelectDB 构建 PB 级 Agent 可观测平台
大数据·数据库·aigc
这个DBA有点耶13 小时前
GROUP BY优化全解:如何写出既不丢数据又飞快的分组查询
数据库·mysql·架构
掉头发的王富贵16 小时前
【StarRocks】极限十分钟入门StarRocks
数据库·sql·mysql
Nturmoils16 小时前
WHERE 条件别凭习惯写,常用查询先跑一遍
数据库
SamDeepThinking20 小时前
一条UPDATE语句在MySQL 8.0中到底加了几把锁?
后端·mysql·程序员
Databend2 天前
在 AWS 中国峰会逛了一天,我在 Databend 展台看到了 Agent 数据基础设施的新思路
数据库·人工智能·agent
李白客3 天前
KES新版MySQL兼容能力再升级意味着什么?
mysql·国产数据库
ClouGence3 天前
Oracle 数据同步为什么会出现数据不一致?长事务是常被忽略的原因
数据库·后端·oracle
飞将3 天前
从零实现数据库(2)——HashIndex + IndexManager
数据库
Nturmoils4 天前
订单列表慢查询,先看 WHERE、ORDER BY 和 LIMIT
数据库