正则表达式中^的用法

正则表达式中^的用法

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 .其实也就是说"[ ]"代表的是一个字符集,"^"只有在字符集中才是反向字符集的意思。
相关推荐
编程、小哥哥29 分钟前
Redis 缓存、加锁(独占/分段)、发布/订阅,常用特性的使用和高级编码操作
数据库·redis·缓存
是谢添啊31 分钟前
不同版本的 Redis 的键值对内存占用情况示例
数据库·redis·内存占用·jemalloc·memory usage
Null箘1 小时前
Node的学习以及学习通过Node书写接口并简单操作数据库
数据库·学习
湫ccc1 小时前
Python连接MySQL数据库教程
开发语言·python·mysql
xuanloyer1 小时前
# Oracle 深入学习 Part 11: Managing Tables(管理表)
数据库·学习·oracle
蜡笔小鑫️2 小时前
海量数据-Vastbase G100数据库安装
网络·数据库
xiegwei2 小时前
数据版本管理和迁移工具Flyway用法最简说明
数据库·oracle
dengjiayue2 小时前
MySQL 事务
数据库·mysql
王佑辉2 小时前
【mysql】tinyint、int、bigint的区别
mysql