2025年正则表达式常用匹配

正则表达式常用匹配首先推荐一个 regex 在线校验链接 https regex101 com 一 限定符 限定符都是作用在符号前面的字符或字符串 1 表示 前面的字符可出现 0 次或者 1 次 如 user 可以匹配 use 与 user 2 表示 前面的字母可出现 0 n 个

大家好,我是讯享网,很高兴认识大家。

首先推荐一个regex在线校验链接: https://regex101.com/.

一、限定符:

限定符都是作用在符号前面的字符或字符串

1.?

?表示?前面的字符可出现0次或者1次,如:user?可以匹配 use 与 user

2.*

*表示*前面的字母可出现0-n个,如:ab*c 可以匹配ac、abc、abbbc

3.+

+表示+前面的字母可出现1-n个,与*的区别在于,*可以匹配0个,如:ab+c 可以匹配abc、abbbc但是不可以匹配ac

4.{n}

{2}表示{2}前面出现n次,如:ab{2}c 只可以匹配abbc,不可以abc、abbbc
{2,6}表示{2,6}前面的字母只能出现2-6次,如:ab{2,6}c 只可以匹配abbc、abbbc 等
{2,}表示{2,}前面的字母只能出现大于等于2次,如:ab{2,}c 只可以匹配abbc、abbbc 等

5.(abc)+多字符匹配

(abc)+表示+前面的字母串abc可出现1-n个,与*的区别在于,*可以匹配0个,如:(abc)+c 可以匹配abc、abcabccc

二、或 运算:

1.a(apple|banana) 或|

可以匹配aapple、abanana,注意括号不可少,如果去掉aapple|banana,则是要么aapple要么banana

三、字符类

1.[abc]+

表示构成只能来自[]内的字母,可以匹配aaaabbbcc、cacbaaa

2.[a-z]+

[a-z]+表示构成只能来自a-z内的小写字母,可以匹配aaaabbbcc、cacbaaa
[a-z0-9A-Z]+表示构成能来自a-z内的小写字母0-9内的数字A-Z内的大写字母,可以匹配aaaabbbcc、cacbaaa123A等


讯享网

3.[^a-z]+

[^a-z]+表示构成不能来自a-z内的小写字母,换行符也算,不可以匹配aaaabbbcc、cacbaaa
[^a-z0-9A-Z]+表示构成不能来自a-z内的小写字母0-9内的数字A-Z内的大写字母,所以只能匹配标点符号等

四、元字符

正则里面的大多数元字符以\开头,注意是向右

\d代表数字字符,等同于[0-9]
\w代表所有英文字符、数字、下划线
\s代表空白符,包括tab、换行符、空格

\D代表非数字字符,等同于[^0-9]
\W代表所有非 英文字符、数字、下划线
\S代表非空白符,包括tab、换行符、空格

\b表示单词边界
.表示任意字符但不包括换行符
^ 表示行首,如^a只会匹配 行abccc、行asss,不匹配行sasd
$ 表示行尾,如a$只会匹配行bccca、行asssa,不匹配行asasd

五、贪婪与懒惰匹配

举例: < select >666< /select >

贪婪匹配: <.+> 默认会匹配全部< select >666< /select >
懒惰匹配:只需在+后面加上个?即:<.+?> 这只会匹配< select >、< /select >

六、实例

1.匹配颜色

#[a-fA-F0-9]{6}\b

2.匹配ip

\b\d+\.\d+\.\d+\.\d+\b //不完美 \b[0-255]+\.[0-255]+\.[0-255]+\.[0-255]+\b //不完美 \b((25[0-5]|2[0-4]\d|[0-1]?\d\d?)\.){ 
   3}(25[0-5]|2[0-4]\d|[0-1]?\d\d?)\b //完美 

讯享网

总结:

在这里插入图片描述

小讯
上一篇 2025-04-03 17:25
下一篇 2025-01-29 10:43

相关推荐

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/73084.html