-
PHP 正则表达式总结
添加时间:2013-7-6 点击量:可以用字符作为一个通配符来庖代除换行符(\n)之外的任一个字符。例如,正则表达式:
读书,不要想着实用,更不要有功利心。读书只为了自身的修养。邂逅一本好书如同邂逅一位知己,邂逅一个完美之人。有时心生敬意,有时怦然心动。仿佛你心底埋藏多年的话,作者替你说了出来,你们在时光深处倾心相遇的一瞬间,情投意合,心旷神怡。
.at
可以与cat、sat、#at和mat等进行匹配。主如果用于在搜刮文件时
也可以指定一个字符集:
[a-z]at
在方括号([])中的内容都是一个字符类--- 一个被匹配字符所属的字符凑集。然则只匹配此中的一个字符。
同时我们也可以给出一个凑集。
[aeiou]
可以用来默示元音字母。
也可以用来默示一个局限。也可所以一个局限集:
[a-zA-Z]
这个局限集代表任何的大小字母。
此外,还可以用凑集来指明字符不属于某个集。例如:
[^a-z]
可以用来匹配任何不在a和z之间的字符。当把脱胎换骨字符号(^)包含在方括号里面时,默示否。
反复次数
默示这个模式可以被反复0次或更多次,符号+则默示这个模式可以被反复1次或更多次。
[[:alnum:]]+
默示至少有一个字母。
子表达式
(very)large
可以匹配 very large 、 large 、very very large 等。
子表达式记数
可以用在花括号({})中的数字表达式来指定内容容许反复的次数。可以指定一个确切的数字({3}默示反复3次),或者一个反复次数的局限
({2,4}默示反复2~4次),或是一个开底的反复局限({2,}默示至少要反复2次).
例如:
(very){1,3}
默示匹配very、very very、very very very。
定位到字符串的开端或末尾
脱字符号(^)用于正则表达式的开端,默示子字符串必须呈如今被搜刮字符串的开端字符处,字符¥用于正则表达式的末尾。默示子字符串必
须呈如今字符串的末尾。
例,以下是在字符串开端处匹配bob:
^bob
这个模式将匹配com呈如今字符串末尾处的字符串:
com¥
最后,这个模式将匹配只包含a到z之间一个字符的字符串:
^[a-z]¥
分支
可以应用正则表达式中的一条竖线来默示一个选择。例如,若是要匹配com、edu或net,就可以应用如下所示的表达示:
com|edu|net
匹配特别字符
若是要匹配特别字符,例如,.、{或者¥,就必须在它们前面加一个反斜杠(\)。若是要匹配一个反斜杠,则必须用两个反斜杠(\\)来默示.
在PHP中,必须将正则表达式模式包含在一个单引号字符串中.
在POSIX正则表达式中,用于方括号外面特别字符的择要
字符 意义 字符 意义
\ 回心字符 ) 子模式的停止
^ 在字符串开端匹配 反复0次或更多次
¥ 在字符串末尾匹配 + 反复1次或更多次
. 匹配除换行符(\n)之外的字符 { 最小/最多量记号的开端
| 选择分支的开端(或) } 最小/最多量记号的停止
( 子模式的开端 ? 标识表记标帜一个子模式为可选的
在POSIX正则表达式中,用于方括号里面的特别字符
字符 意义
\ 回心字符
^ 非,仅用在开端地位
- 用于指明字符局限