php正则表达式

来源:互联网 发布:淘宝仿真左轮 编辑:程序博客网 时间:2024/04/30 05:38

php正则表达式:

1)、定界符"/",通常使用"/"作为开始和结束标记,位于"/"之间的部分就是将要在目标对象中进行匹配的模式

 

2)、字符域"[]","["与"]"中的内容指定匹配范围而不局限于具体的某个字符,例如:/[a-z]/可以和"a"匹配,也可以和"b"匹配

 

3)、普通字符,

普通字符

含义

[a-z]

匹配任意一个小写字母

[A-Z]

匹配任意一个大写字母

[0-9]

匹配任意一个数字

 

3)转义字符"\",将下一个字符标记为一个特殊字符,或一个原义字符,例如:"\n"匹配一个换行符,"\\"匹配一个"\"符

转义字符

含义

\f

匹配一个换页符

\n

匹配一个换行符

\r

匹配一个回车符

\t

匹配一个制表符

\v

匹配一个垂直制表符

\s

匹配任何空白字符,包括空格、制表符、换页符等等。等价于[\f\n\r\t\v]

\S

匹配任何非空白符。等价于[^\f\n\r\t\v]

\d

匹配任意一个数字。等价于[0-9]

\D

匹配任意一个非数字。等价于[^0-9]

\w

匹配任意一个大小写英文字母、数字以及下划线。等价于[a-zA-Z0-9_]

\W

等价于[^a-zA-Z0-9_]

 

4)、限定符,用来指定匹配对象需要出现多少次才能满足匹配,例如:/[a-z]{2}/可以和"aa"匹配,也可以和"xy"匹配,但是不能和"a2"匹配

限定符

含义

{n}

n是一个非负整数,匹配确定的n次

{n,}

n是一个非负整数,至少匹配n次

{,m}

m是一个非负整数,至多匹配m次

{n,m}

n和m均为非负整数,其中n<=m,最少匹配n次且最多匹配m次

*

匹配0次或多次,等价于{0,}

+

匹配1次或多次,等价于{1,}

?

匹配0次或1次,等价于{0,1}

 

5)、定位符,用来描述字符串或单词的边界,例如:/^a/可以和"agree"匹配,不能和"bgree"匹配,/e$/可以和"agree"匹配,不能和"agref"匹配

定位符

含义

^

用来匹配字符串的开始

$

用来匹配字符串的结束

\b

用来匹配单词的前或后边界,也就是单词和空格间的位置

\B

用来匹配非单词边界

 

6)、模式修正符,标记在整个模式之外,例如:/.../i

模式修正符

含义

i

忽略大小写

m

将字符串视为多行,当设定了此修正符之后,行起始"^"和行结束"$"除了匹配整个字符串的开始和结束外,还分别匹配其中的换行符"\n"的之后和之前

也就是说"\n"之后是下一行的开始,"\n"之前是上一行的结束

s

将字符串视为单行,换行符做普通字符看待

x

空白忽略不计

A

强制从目标字符串开头匹配

D

强制从目标字符串结尾匹配,当设定了此修正符之后,会对匹配对象结尾的换行符"\n"进行匹配,如果没设定,则用"$"匹配字符串结尾时,"$"会忽略最后的换行符"\n"

U

只匹配最近一个字符串

e

配合函数preg_replace()使用,可以把匹配来的字符串当作正则表达式执行

 

7)、各种操作符的运算优先级,相同优先级的从左到右进行运算,不同优先级的运算先高后低

操作符

描述

\

转义符

(),(?:),(?=),[]

圆括号和方括号

*,+,?,{n},{n,},{,m},{n,m}

限定符

^,$,\anymetacharacter

位置和顺序

|

"或"操作

0 0
原创粉丝点击