每日学习之正则表达式(一)

正则表达式就是一组由字母和符号组成的特殊文本,可以在一段文本种找出满足格式的句子

下面我们来直接来学习该如何写正则表达式

正则表达式的书写依赖于元字符,这些字符都有他们独特的含义

1.点字符.
.字符即匹配任意单个字符,但是不匹配换行字符
若输入.yc 会匹配任意一个字符后面跟着yc的字符串
wechat_2025-07-06_000941_536

2.[]字符
[]用来表示匹配[]内字符后跟着指定字符的字符串
若输入[dDY]yc ,即匹配dyc、Dyc、Yyc
wechat_2025-07-06_002426_235
若只输入[dDY],则是匹配括号内的字符
wechat_2025-07-06_002600_564
若我们在[]内输入连字符,则可以匹配一个范围,比如[a-z]yc,则表示匹配所有以小写字母开头后跟着yc的字符串
wechat_2025-07-06_002759_756

3.否定字符^
若输入[^Y]yc,则匹配不是以Y开头后跟yc的字符串
wechat_2025-07-06_003007_227

4.*字符
字符只能跟在某个字符后面,而不能单独置于字符前,用来表示匹配所有以前的字符开头的字符串
若输入d,匹配结果如下
wechat_2025-07-06_003542_483
若输入[a-z]
,则表示匹配所有小写字符串
wechat_2025-07-06_003628_361

5.+字符
+号跟在字符的后面,用来匹配+号前面的字符,前面的字符至少出现一次,也可以多次,这种匹配模式也被叫做贪婪匹配
比如d+,会匹配所有的d字符,连续的d字符算一组匹配
wechat_2025-07-06_004326_235
.和+能配合使用
若输入d.+c,则会从第一个d开始,匹配到最后一个c
wechat_2025-07-06_004534_937
但若是输入d+.c,则只会匹配从一个d开始往后到遇见的第一个c
wechat_2025-07-06_004642_850
对于这两个式子输出的差异,是因为d.+c的规则是,先找到d,接着匹配任意数量的任意字符,最后以c结尾;而d+.c的规则是,先匹配一个或多个d,然后匹配任意一个字符,最后匹配c

可能你还是有点无法理解,那我们就单独把.+拎出来解释,他的匹配规则是从当前位置开始,尽可能多的匹配任意字符,直到无法匹配为止,故d.+c即从d开始,往后匹配任意字符,直到最后一个c为止;而+.的匹配规则是匹配前一个元素至少一次,然后任意匹配一个字符,故d.+c就是匹配前面所有的d,然后从最后一个d开始,往后任意匹配一个字符,最后以c字符结尾。

希望我的这番解释能够让你理解这个组合式子

那我们正则表达式的第一期就讲这五个元字符,其他的我们放到下一期来讲

光看看这些例子你可能无法真正的理解和应用。你可以到下面这个网站多加联系,实战才能锻炼能力,加油!!

正则表达式练习:https://regex101.com/

posted @ 2025-07-06 01:03  努力成为OM大师  阅读(63)  评论(0)    收藏  举报