您的位置:首页 > 编程语言 > PHP开发

php正则表达式二

2016-08-21 22:06 288 查看
我们编写正则表达式时需要确认三件事:

1)  你要查什么?

2)  你要从哪查?

3)  你要查多少?

1、  限定符

限定符可以指定正则表达式的一个给定组件必须要出现多少次才能满足匹配。

     *                   匹配前面的表达式零次或多次                       {0,}

    +                   匹配前面的表达式一次或多次                       {1,}

    ?                   匹配前面的子表达式零次或一次                   {0,1}

     {n}                匹配确定的 n 次

    {n,}               至少匹配n 次

     {n,m}          最少匹配 n 次且最多匹配 m 次

 

 

贪婪匹配原则:

         正则表达式在匹配时,尽可能去匹配更多的字符串

 

         非贪婪匹配原则:

         尽可能去匹配少的字符串,在限定符后面加上 “?”

2、  字符匹配符

 

字符匹配符用于匹配某个或某些字符

 

字符簇

•       [a-z] :匹配a-z之间的字符

•       [A-Z] :匹配A-Z之间的字符

•       [0-9] :匹配任意一个数字

•       [0-9a-z] :匹配0-9  a-z 之间任意一个字符

•       [0-9a-zA-Z] :匹配0-9 a-z A-Z之间任意一个字符

•       [abcd] :匹配字符a 或  b 或  c 或 d

•       [1234] :匹配字符 1 或 2 或3 或 4

•       [^a-z] :匹配除了a-z之外的任意一个字符

•       [^0-9] :匹配除了数字之外的任意一个字符

•       [^abcd] :匹配除了字符a b c d 之外的任意一个字

 

•       \d :匹配一个数字字符。               [0-9]

•       \D :匹配一个非数字字符。                   [^0-9]

•       \w :匹配包括下划线的任何单词字符。[0-9a-zA-Z_]

•       \W :匹配任何非单词字符。         [^\w]

•       \s :匹配任何空白字符                    空格、换行符、制表符

•       \S :匹配任何非空白字符。         [^\s]

•       .  :匹配除"\n" 之外的任何单个字符

 

如果想匹配任意字符:   reg = /[.\n]/ gi;

3、  定位符

•       ^        匹配输入字符串的开始位置

•       $        匹配输入字符串的结束位置

 

•       \b       匹配一个单词边界 

•       \B      匹配非单词边

4、  转义符

 

•       \         用于匹配某些特殊字符

 

需要转义的:

* + ? . \    / ^ $ [ ] ( ) {
4000
} |

5、  选择匹配符

•       | 可以匹配多个规则

 

 

6、  特殊用法

 

•       (?=)

正向预查、

•       (?!)

负向预查

 

•       (?:)

匹配但不捕获

 

 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: