正则表达式的复习

点击阅读原文



一个正则表达式主要由以下几部分组成的:原子,元字符,定界符,模式修正符号


如:”/\<img\s*src=\".*?\"\/\>/iu”


原子: ims \s

元字符:* ?

模式修正符号: i u

定界符号:/ /


注意:


①     定界符:除了字母,数字和正斜线\以外的任何字符都可以是定界符号,如# #,| |,{ }等

②     元字符:是一种特殊的字符,是用来修饰原子用到,不可以单独出现

+:表示重复匹配其前面的原子一次或多次

?:表示重复匹配其前面的原子0次或一次

*:表示重复匹配其前面的原子0次或多次

{}:可以自定义前面原子出现的次数:

{n}表示重复匹配其前面的原子n次

{n,m}表示重复匹配其前面的原子n到m次,包括n和m

{n,}表示重复匹配其前面的原子n次或无限次

. :匹配除换行符以外的任意字符

^:匹配字符串的开始

$:匹配字符处的结束

|:表示或的关系,它的优先级别是最低的,最后考虑他的功能

\b:匹配单词的分解处,单词是由空格,标点符号或者换行符来分隔的

\B:匹配不是单词开头或结束的位置,如:/\Bone\b/ 表示one的左边不是边界,one的右边是单词边界(如空格,标点符号或换行符)


():重点

       一:作为大原子使用:如/(test)+/ 表示匹配单词test至少一次

       二:改变优先级,加上括号可以提高优先级

       三:作为子模式使用

       四:反向引用,可以在正则模式中直接将子模式取出来,作为正则表达式模式的一部分,如果是在正则表达式像替换函数preg_replace函数中,可以将子模式去除,在被替换的字符串中使用。

\1:取第一个子模式

\n:取第n个子模式

注意:单双引号的区别,如”\\1”等价于‘\1’


③     原子:原子是正则表达式的最基本的组成单位,而且必须至少要包含一个原子,只要一个正则表达式可以单独使用的字符,就是原子

a)         元字符如果想做为原子使用,则必须使用转义字符“\”进行转义,如:\.,\*,\?等等

b)        转义字符除了可以将有意义的字符转成没意义的字符,还可以将没意义的字符转成有意义的字符,如:\d ,\w,\s等等

c)         可以自己定义一个原子表,用来匹配方括号中的任意一个原子

[a-z1-3]

[^A-Z]表示取反,用来匹配除了原子表中的原子意外的字符(^必须在[ ]内的第一个字符处出现),而且取反字符集可以匹配回车换行符

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值