正则表达式——^的两种用法

用法一: 限定开头

文档上给出了解释是匹配输入的开始,如果多行标示被设置成了true,同时会匹配后面紧跟的字符。 比如 /^A/会匹配"An e"中的A,但是不会匹配"ab A"中的A

用法二:(否)取反

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

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

总结:何时"^"是否定字符,何时匹配开始行

(1)表示限定开头的示例:

/[(^\s+)(\s+$)]/g

(^cat)$

(^cat$)

^(cat)$

^(cat$)

(2)表示否定的示例:

\^a\]表示"匹配除了a的任意字符"。 \[\^a-zA-Z0-9\]表示"找到一个非字母也非数字的字符"。 \[\\\^abc\]表示"找到一个插入符或者a或者b或者c"。 **经过对比,只要是"\^"这个字符是在中括号"\[\]"中被使用的话就是表示字符类的否定,如果不是的话就是表示限定开头。我这里说的是直接在"\[\]"中使用,不包括嵌套使用。 其实也就是说"\[\]"代表的是一个字符集,"\^"只有在字符集中才是反向字符集的意思。**

相关推荐
搞科研的小刘选手8 分钟前
【高届数传感机电会议】第十二届传感器、机电一体化和自动化系统国际学术研讨会(ISSMAS 2026)
运维·人工智能·自动化·控制·传感器·传感·机电
楼兰公子25 分钟前
读取rpi摄像头
linux·服务器·算法
李景琰30 分钟前
Debian12安装配置Mqtt之EMQX
linux·运维·服务器
SimLine芯见31 分钟前
专为空管环境打造的KVM切换器,满足主备自动化高速无缝切换需求
运维·自动化
不做无法实现的梦~38 分钟前
PX4 机载电脑 Linux 环境安装、串口、网络、ROS 完整配置
linux·运维·网络
嵌入式×边缘AI:打怪升级日志38 分钟前
嵌入式Linux开发(了解交叉编译工具链的组成)
java·linux·运维
IT界的老黄牛42 分钟前
停电后 Redis 集群两节点起不来:fix 完还报 Bad file format?多部分 AOF 修复的正确姿势
运维·redis·缓存
接着奏乐接着舞43 分钟前
3D Tiles tileset.jso 数据格式
运维·服务器·3d
李小白202002021 小时前
RK3568 linux6.1 死机
linux·运维·服务器
FreeGo~1 小时前
Linux 系统编程 进程篇 (五)
java·linux·服务器