【正则表达式】1.基本字符

1|01.组成正则字符

1|1确定字符

/hello/gm hello曾小红 ,welcome to regex learn site

1|2不确定字符

/\d\d\d\d/m 【阿里云】您正在登录验证,验证码2571, 切勿将验证码泄露于他人,本条验证码有效期15分钟。

1|3混合字符

请匹配运动员的挺举成绩 提示:本例包括单位:KG /挺举\d\dKG/gm 曾小红,男,举重运动员,28岁,体重56KG,身高175cm。最好成绩:挺举98KG

2|02.范围字符

2|1.任意字符

除换行符外的任意单个字符

请匹配所有姓张的名字. 可以匹配任意一个字符 /张../gm 姓名 / 籍贯 体重 生日 于小彤 / 中国辽宁 / 63 KG / 1994-05-27 <u>张惠妹</u> / 台湾台东县卑南乡 / 46 KG / 1972-08-09 沈佳妮 / 中国上海 / 51 KG / 1983-05-22 沈丹萍 / 中国南京 / 65 KG / 1960-02-19 王紫逸 / 中国香港 / 65 KG / 1986-12-15 吴健 / 中国淄博 / 68 KG / 1978-01-03 金荷娜 / 韩国 / 48 KG / 1978-02-21 <u>张曼玉</u> / 中国 / 40 KG / 1964-09-20 薛佳凝 / 哈尔滨 / 45 KG / 1978-08-13

2|2\w单词字符

\w表字母、数字、下划线中任意单个字符。
注意:在正则表达中范围字符是区分大小写的,通常是表示反义。如\W 表示\w之外的字符

请匹配css样式中所有 颜色 代码 以#开头的6位十六进制数用于表示颜色,规律如下 : 以#开头,以;结尾 6个字母或数字 记得结尾要包含 ; /#\w\w\w\w\w\w;/gm html{ background-color: #1e1e1e; } body{ color: #55432c; background-color: #5b3d17; } div{ color: #ff0000; }

2|3\d数字符

\d 表示0-9任意单个字符。
大写的\D表示反义,即\d之外的字符

请匹配文中所有的生日 小提示:复杂的表达式,可以先编写确定部分,在写不确定部分。 注:匹配的结果不包含空格 /\d\d\d\d-\d\d-\d\d/gm 姓名 / 籍贯 体重 生日 于小彤 / 中国辽宁 / 63 KG / 1994-05-27 张惠妹 / 台湾台东县卑南乡 / 46 KG / 1972-08-09 沈佳妮 / 中国上海 / 51 KG / 1983-05-22 沈丹萍 / 中国南京 / 65 KG / 1960-02-19 王紫逸 / 中国香港 / 65 KG / 1986-12-15 吴健 / 中国淄博 / 68 KG / 1978-01-03 金荷娜 / 韩国 / 48 KG / 1978-02-21 张曼玉 / 中国 / 40 KG / 1964-09-20 薛佳凝 / 哈尔滨 / 45 KG / 1978-08-13

2|4\s 空白字符

\s表示单个空白字符,其包括空格、tab制表符、换行。注意:退格不属于空白字符
大写的\S表示反义,即非空白字符,也是正则中常用字符

3|03.自定义范围字符

定定义范围指由多个字符,多个范围字符组成的集合,取其中任意一个。

3|1[abc123] 任意范围

一组由确定字符组成的字符集,取其中一个

请使用[]匹配姓:张、沈、薛的名字 提示: 姓氏范围是:张、沈、薛 名称不确定可由.代替 [张沈薛].. 姓名 / 籍贯 体重 生日 于小彤 / 中国辽宁 / 63 KG / 1994-05-27 张惠妹 / 台湾台东县卑南乡 / 46 KG / 1972-08-09 沈佳妮 / 中国上海 / 51 KG / 1983-05-22 沈丹萍 / 中国南京 / 65 KG / 1960-02-19 王紫逸 / 中国香港 / 65 KG / 1986-12-15 吴健 / 中国淄博 / 68 KG / 1978-01-03 金荷娜 / 韩国 / 48 KG / 1978-02-21 张曼玉 / 中国 / 40 KG / 1964-09-20 薛佳凝 / 哈尔滨 / 45 KG / 1978-08-13

3|2[0-9] 数字区间范围

指定数字范围集,[0-9] 等同于\d

请用[n-m]匹配下文中合法的日期 想一想:日期中的年、月、日有哪些特征? 注:文中年份都是合法的 正则:/\d\d\d\d-[01]\d-[0-3]\d/gm 1970-59-19 1979-07-23 1974-05-23 1986-08-23 1979-02-08 1967-31-27 1981-09-49 1978-04-17 1976-08-13 1979-01-06 1979-10-15 1981-01-05 1979-10-75 1979-01-05 1967-08-12

3|3[a-z0-9] 混合范围集

[a-c\d] 表示 a、b、c字母或0-9数字中任意一个字符。等同于[a-c0-9]

请匹配合法的颜色代码 以#开头的6位十六进制数用于表示颜色,规律如下 : 以#开头,以;结尾 6个字母或数字组成 16进制字母只能是a-f 匹配结果包括#和; 正则:/#[\da-f]{6};/gm html{ background-color: #1e1e1e; } body{ color: #55432c; background-color: #5b3g17; } div{ color: #ff0000; }

3|4[^ ] 排除范围

表示[ ]集之外的任单个字符,如[^0-9] 表示非数字,效果等同于\D

请匹配80年代或90年代以外的日期 提示: 通过[^8-9] 排除年份中的第3位。 正则:/\d\d[^8-9\D]\d-\d\d-\d\d/gm 姓名 / 籍贯 体重 生日 于小彤 / 中国辽宁 / 63 KG / 1994-05-27 张惠妹 / 台湾台东县卑南乡 / 46 KG / 1972-08-09 沈佳妮 / 中国上海 / 51 KG / 1983-05-22 沈丹萍 / 中国南京 / 65 KG / 1960-02-19 王紫逸 / 中国香港 / 65 KG / 1986-12-15 吴健 / 中国淄博 / 68 KG / 1978-01-03 金荷娜 / 韩国 / 48 KG / 1978-02-21 张曼玉 / 中国 / 40 KG / 1964-09-20 薛佳凝 / 哈尔滨 / 45 KG / 1978-08-13

3|5[.$^]范围集中的特殊字符

.表示任意字符,但在[.] 中它表示的是 . 字符本身。甚至是^、-、[、] 范围集本身语法,如果不是在恰当位置,也表示其字符本身。为避免混淆建议大家在范围集中匹配特殊字符时,统一加上 转义符 \。 如 [^.] 表示匹配 ^ 或 .

范围集用来匹配中文字符区间,为了避免篇幅过长,我们把它放在特殊字符篇讲解。

\转义特殊字符
如果要匹配[、*等特殊字符,需要加入一个转义符:\即可。转义符也可加在范围字符中如[-] 表示一个普通的 - 。

请匹配文中正确的车牌号码 普通车牌特征: 1.第1位是表籍贯的汉字 2.第2位是表城市的大写字母,不包括I和O。因为容易和数字01混淆 3.后5位是字母加数字,也不包括I和O 提示:如何表示除IO之外的字母呢? 小技巧:后5位字符范围都是一样,如果不想重复写,可在范围集后面加个{5}试试。 正则:/[湘皖鲁][A-HJ-NP-Z][A-HJ-NP-Z0-9]{5}/gm 湘C4VQR6 湘G9NRCE 湘A3EWAY 湘D4U9U5 湘C6FBKN 湘A0Z5VK 湘D2HQUS 皖DOCLYJ 皖E74V7I 皖E9T3RK 11WEIZ 鲁C67RSN 鲁C8WU2C 鲁E2S1EF A418KB 鲁P9RNA7 鲁B1ETSP 鲁C195ES N鲁5FSTV 鲁Z140YQ

__EOF__

本文作者blanset
本文链接https://www.cnblogs.com/blanset/p/16846028.html
关于博主:评论和私信会在第一时间回复。或者直接私信我。
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
声援博主:如果您觉得文章对您有帮助,可以点击文章右下角推荐一下。您的鼓励是博主的最大动力!
posted @   求道之愚者  阅读(129)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律
点击右上角即可分享
微信分享提示