正则表达式中^的用法

正则表达式中^的用法

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 .其实也就是说"[ ]"代表的是一个字符集,"^"只有在字符集中才是反向字符集的意思。
相关推荐
倔强的石头_7 小时前
《Kingbase护城河》——数据库存储空间全景探测与精细化瘦身实战
数据库
云技纵横7 小时前
唯一索引 INSERT 死锁实战:5 秒复现交叉插入的 S 锁循环等待
sql·mysql
沉默王二7 小时前
面试官:RAG 不用向量数据库,用 MySQL 硬扛?我:100 万向量不是很轻松?
mysql·面试·ai编程
冬奇Lab20 小时前
每日一个开源项目(第134篇):Zvec - 阿里开源的嵌入式向量数据库,向量搜索界的 SQLite
数据库·人工智能·llm
小猿姐1 天前
MySQL Top 10 热点问题 AI 运维实战:从内核诊断到云原生运维
mysql·云原生·aiops
ClouGence1 天前
Oracle CDC 架构优化:从主库直连到 DataGuard 备库同步
数据库·后端·oracle
云技纵横1 天前
Gap Lock 死锁实战:5 秒在本地复现 MySQL 间隙锁死锁
后端·mysql
无响应de神1 天前
三、用户与权限管理
数据库·mysql
摇滚侠2 天前
Linux CentOS7 rpm 安装 MySQL 5.7
linux·运维·mysql