常用的正则表达式符号

符号含义例子匹配结果
*匹配前面的字符、子表达式或括号里的字符0次或多次a*b*

aaaaaaaa;

aaabbbbb;

bbbbbbbb;

+匹配前面的字符、子表达式或括号里的字符至少1次a+b+

aaaaaaab;

aaabbbbb;

abbbbbbb;

 

[]匹配中括号里的任意字符(相当于“任选一个”)[A-Z]*

APPLE;

CAPITALS;

QWERTY;

()表达式编组(在正则表达式的规则里编组会优先运行)(a*b)*

aaabaab;

abaaab;

ababaaaaab;

{m,n}匹配前面的字符、子表达式或括号里的字符m到n次(包含m或n)a{2,3}b{2,3}

aabbb;

aaabbb;

aabb;

[^]匹配任意一个不在中括号里的字符[^A-Z]*

apple;

lowercase;

qwerty;

|匹配任意一个由竖线分割的字符、子表达式(注意是竖线,不是大写字母I)b(a|i|e)d

bad;

bid;

bed

.匹配任意单个字符(包括括号、数字和空格等)a.d

bad;

bzd;

b$d;

b d

^指字符串开始位置的字符或子表达式^a

apple;

asdf;

a;

\转义字符(把有特殊含义的字符转换成字面形式)

\.\|

.\|

$经常在正则表达式的末尾,表示“从字符串的末端匹配”。如果不用它,每个正则表达式实际都带着“.*”模式,只会从字符串开头进行匹配。这个符号可以看成是^符号的反义词。[A-Z]*[a-z]*$

ABCabc;

zzzyx;

Bob;

?!“不包含”。这个奇怪的组合通常放在字符或正则表达式前面,表示字符不能出现在目标字符里。这个符号比较难用,毕竟字符通常会在字符串的不同部位出现。如果要在整个字符串中彻底排除某个字符,就加上^和$符号。^((?![A-Z]).)*$

no-caps-here;

$ymb01sa4ef!ne;

 

例如经典的识别邮箱地址的表达式:

[A-Za-z0-9\._+]+@[A-Za-z]+\.[com|org|edu|net]

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值