PHP基础整理5

一个完整的正则表达式由两部分构成,元字符和文本字符

元字符就是具有特殊含义的字符,例如: *   ?

文本字符就是普通的文本

行定位符就是用来描述字串的边界。“^”表示行的开始;“$”表示行的结尾

单词定界符 :\b和\B。\b表示查找一个完整的单词;\B表示查找的子串不能是一个完整的单词

字符类:[ ]。表示忽略大小写的作用;[Zz][Jj]就可以匹配字串zj的所有写法;一个方括号只能匹配一个字符

选择字符:| 。可以理解为“或”;Z|zJ|j 意思是以字母Z或z开头,后面接M或m;可以匹配任意长度的字串

连字符: - 。可以标志字符的范围;a-z表示a到z之间的所有字符

排除字符: [^]。匹配不符合规则的字串;[^a-z_A-z]匹配的是不以字母和下划线开头的变量

限定符:

             1、?  匹配前面的字符零次或一次

             2、+  匹配前面的字符一次或多次

             3、*   匹配前面的字符零次或多次

             4、{n}  匹配前面的字符n次

             5、{n,} 匹配前面的字符最少n次

             6、{n,m}  匹配前面的字符最少n次,最多m次

点号字符: . 。可以匹配出除换行字符外的任意一个字符。

转义字符:\  。可以将特殊字符变成普通的字符

反斜线:(图片是转载的)

括号字符:() 。可以改变限定符的作用范围;分组

反向引用:依靠子表达式的“记忆”功能来匹配连续出现的字串货字母

模式修饰符:

                    1、i 忽略大小写模式

                    2、m 多文本模式,即字串内部有多个换行符时,影响“^”和“$”的匹配

                    3、s 单文本模式,在此模式下,元字符点号可以匹配换行符

                    4、x 忽略空白字符

POSIX扩展正则表达式函数:

1、ereg()函数和eregi()函数,匹配字符串,ereg()区分大小写。bool ereg/eregi(string pattern,string string ,array regs),匹配成功返回true,regs为成功匹配的字串

2、ereg_replace()和eregi_replace(),替换匹配的字符串。string ereg_replace/eregi_replcace(string pattern,string replacement,string string)

3、split()和spliti()函数,分割字符串。array split/spliti(string pattern,string string int limit)

PCRE兼容正则表达式函数:

1、preg_grep()函数。array preg_grep(string pattern,array input),使用数组input中的元素一一匹配pattern,最后返回由所有相匹配的元素所组成的数组

2、preg_match()和preg_match_all()。int preg_match/preg_match_all(string pattern,string subject,array matches),在字符串subject中匹配表达式pattern。返回匹配的次         数,若存在数组matches,那每次匹配的结果都存储到数组中。preg_match_all()会一直匹配到最后,对于它数组matches是必须有的

3、preg_quote()函数,string preg_quote(string str,string delimiter),将字符串str的所有特殊字符进行自动转义,如果存在delimiter,那么该参数的字串也被转义

4、preg_replace()函数, mixed preg_replace(mixed pattern,mixed replacement,mixed subject,int limit),在字符串subject中匹配表达式pattern,并将匹配项替换成字串                repalcement,如果有参数limit。则替换limit次。

5、preg_replace_callback()函数, 与preg_replace()函数功能相同,不同的是这个函数使用一个回调函数替代replacement

6、preg_split()函数,array preg_split(string pattern,string subject ,int limit),使用表达式pattern来分割字符串subject,如果有limit,那么数组最多有limit个元素

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值