正则表达式中^的用法

正则表达式中^的用法

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 .其实也就是说"[ ]"代表的是一个字符集,"^"只有在字符集中才是反向字符集的意思。

相关推荐
陌路203 分钟前
redis的哨兵模式
数据库·redis·缓存
ohoy3 分钟前
mysql数据存在则更新、不存在插入
数据库·mysql
小北方城市网13 分钟前
第7课:Vue 3应用性能优化与进阶实战——让你的应用更快、更流畅
前端·javascript·vue.js·ai·性能优化·正则表达式·json
TG:@yunlaoda360 云老大15 分钟前
华为云国际站代理商TaurusDB的读写分离是如何实现的?
服务器·数据库·华为云
2301_7921858821 分钟前
基于软件工程的结构化设计实验
数据库·oracle·软件工程
小宇的天下28 分钟前
Allegro AXL (SKILL Extension) 手册核心内容结构化总结
数据库·oracle
CodeAmaz1 小时前
Redis与数据库双写一致性详解
数据库·redis·缓存·数据一致性
Data_agent1 小时前
京东商品价格历史信息API使用指南
java·大数据·前端·数据库·python
weixin_445476681 小时前
线上问题排查记录——MySQL 子查询报错 “Subquery returns more than 1 row” 问题总结
数据库·mysql
学习编程的Kitty1 小时前
Redis(2)——事务
数据库·redis·缓存