php中正则表达式
3.1 PHP中正则表达式
正则表达是会在开发中经常看到,它主要用在以下一些地方:匹配邮箱、手机号码、验证码、替换敏感的关键词。例如:涉及政治和骂人的话
PHP的正则表达示定界符的规定如下:定界符,不能用a-zA-Z0-9\ 其他的都可以用。必须成对出现,有开始就有结束。
举例说明正则符号的定义方式:
例子 说明
/中间写正则/ 正确 $中间写正则$ 正确 %中间写正则% 正确 ^中间写正则^ 正确 @中间写正则@ 正确 (中间写正则) 错误 A中间写正则A 错误
注:\ 是转义字符,如果在以后正则表达示里面需要匹配/,如下:
/ / /
这个时候真要匹配/ 的时候,需要把定界符里面的/ 用转义字符转义一下,写成下面的例子:
/ \/ /
如果你觉得麻烦,遇到这种需要转义的字符的时候可以把两个正斜线(/ /)定界,改为其他的定界符(# #)。
正规表代式格式:
preg_match ( string $正则 , string $字符串 , array&$结果] )
功能:根据$正则变量,匹配$字符串变量。如果存在则返回匹配的个数,把匹配到的结果放到$结果变量里。如果没有匹配到结果返回0。
<?php $zz = '/wq/'; $string = 'ssssswqaaaaaa'; if(preg_match($zz, $string, $matches)){ echo '匹配到了,结果为:'; var_dump($matches); }else{ echo '没有匹配到'; } ?>
我们常用的正则函数有:
序号 |
函数信息 |
说明 |
实例 |
1 |
preg_filter |
执行一个正则表达式搜索和替换 |
|
2 |
preg_grep |
返回匹配模式的数组条目 |
|
3 |
preg_match |
执行一个正则表达式匹配 |
|
4 |
preg_match_all |
执行一个全局正则表达式匹配 |
|
5 |
preg_replace_callback_array |
传入数组,执行一个正则表达式搜索和替换使用回调 |
|
6 |
preg_replace_callback |
执行一个正则表达式搜索并且使用一个回调进行替换 |
|
7 |
preg_replace |
执行一个正则表达式的搜索和替换 |
|
8 |
preg_split |
通过一个正则表达式分隔字符串 |