当前位置:网站首页>【正则表达式】笔记
【正则表达式】笔记
2022-08-04 00:51:00 【昱浑】
- ^$
表示匹配从^到&之间的内容,用于开头结尾但可以省略, ^123&必须完全匹配123
范围:[] 、{} 、()
- []
约束内容。整个[]内只匹配一个字符 [abc123] 可以是abc123中的 一个 [a-zA-Z] 可以是任意一个字母;[^]: []内的^表示取反, [^a-zA-Z] 指不可以是字母 - {}
约束数量。单独[]只匹配一个字符.所以{}表示[]里的内容的个数, 如[]{3} 指定3个字符, []{3,5} 指定3个至5个, []{3,} 3至无数个。三种特殊数量: ?、*、 + - ()
表示组,一组内容视为一个整体,可以再对组做数量约束;
还可用于对正则中一部分数据分组取出;
分组的目的还可以重复应用,即后面内容必须和前面相等
字符
.点
表示可以匹配任意字符(除了换行) .{2,5} 匹配2至5个任意字符\d
匹配任何数字 等同于0-9 ; \D 等同^\d 不匹配任何字符\w
包括字母、数字、或下划线_\s
代表 [\r \n \t \f \v ]回车符、翻页符、空格等; \S 就是\s取反
数量
- ?
表示某个内容出现0至1次,等同于 {0,1} - *
表示某个内容出现0至无穷次 等同于{0,} (?和*都是对数量的约束,不指的是任意内容) - +
表示某个内容出现 1至无穷次 等同于{1,}
其他
- \
表示转义, 如.表示任意字符,但.表示必须匹配.这个字符
举例: 匹配是字符或数字开头的163邮箱: ^ [a-zA-Z0-9]\[email protected]%
- |
表示 或
()的其他用法
- ()
表示组,一组时一个整体,可以再对组做数量限制;还可用于对正则中一部分数据分组取出;分组的目的还可以重复应用,即后面内容必须和前面相等
^([a-zA-Z0-9]\w+)@163\.com%
^(?<first>[a-zA-Z0-9]\w+)@163\.com% 将邮箱@前内容取出并将分组命名为first
^\d\d\d\d% 表示四位数字
^(\d\d)\1% \1表示后面的内容引用前面的第一个分组 所以表示第三四位要等于第一二位
^(?<first>\d\d)\k<first>% 等同于^(\d\d)\1% ,在对组取名称情况下,要用\k<>引用
(?=str) 匹配并取出内容,且内容还要在str前的才行 如:cdx(?=ohh) cdxohh可以匹配,但cdxkkk就不行
(?!) 对上述取反, 表示不能在str前的才行
(?<=str) 匹配并取出内容,且内容还要在str后的才行 cdx(?<=ohh) ohhcdx
(?<!) 对上述取反, 表示不能在str后的才行
边栏推荐
- View the version number of CUDA, pytorch, etc.
- How to find the cause of Fiori Launchpad routing errors by single-step debugging
- Electronics manufacturing enterprise deployment WMS what are the benefits of warehouse management system
- 易动纷享--测试实习生视频面试
- Google Earth Engine ——利用公开的河流数据计算河流的有效宽度
- Jmeter cross-platform operation CSV files
- 七夕佳节即将来到,VR全景云游为你神助攻
- 第1章:初识数据库与MySQL----MySQL安装
- Analysis: What makes the Nomad Bridge hack unique
- 数据库扩容也可以如此丝滑,MySQL千亿级数据生产环境扩容实战
猜你喜欢

typescript52-简化泛型函数调用

How to find the cause of Fiori Launchpad routing errors by single-step debugging

教你如何定位不合理的SQL?并优化之

typescript52 - simplify generic function calls

typescript50-交叉类型和接口之间的类型说明

【面经】被虐了之后,我翻烂了equals源码,总结如下

The problem of disorganized data output by mnn model

typescript55 - generic constraints

电子组装行业对MES管理系统的需求分析

Vant3 - click on the corresponding name name to jump to the next page corresponding to the location of the name of the TAB bar
随机推荐
jmeter distributed stress test
小米--测试开发
Salesforce's China business may see new changes, rumors may be closing
114. 如何通过单步调试的方式找到引起 Fiori Launchpad 路由错误的原因
C# WPF设备监控软件(经典)-下篇
typescript52-简化泛型函数调用
微服务的简单介绍
js函数防抖和函数节流及其使用场景
114. How to find the cause of Fiori Launchpad routing error by single-step debugging
outputBufferIndex = mDecode.dequeueOutputBuffer(bufferInfo, 0) 一直返回为-1
分布式事务框架 seata
R3LIVE论文学习(二):VIO子系统
What warehouse management problems can WMS warehouse management system solve in the electronics industry?
七夕活动浪漫上线,别让网络拖慢和小姐姐的开黑时间
typescript55 - generic constraints
扩展卡尔曼滤波EKF
fsdbDump用法
取模运算(MOD)
vxe-table 从页面批量删除数据 (不动数据库里的数据)
网络带宽监控,带宽监控工具哪个好