PHP常用正则表达式函数浅析
1. preg_match()函数
preg_match()函数在字符串中搜索模式,如果存在则返回true,否则返回false
$pattern='/php/';
$str='php100.com';
echo preg_match($pattern,$str);
输出结果:1
2. preg_grep()函数
preg_grep()函数搜索数组中的所有元素,返回由与某个模式匹配的所有元素组成的数组
$pattern='/p$/';
$strArray=array('asp','php','jsp','python','ruby');
print_r(preg_grep($pattern,$strArray));
输出结果:
Array
(
[0] => asp
[1] => php
[2] => jsp
)
3. preg_match_all()函数
preg_match_all()函数在字符串中匹配模式的所有出现,然后将所有匹配到的全部放入数组
$pattern='/php[1-5]/';
$str='php1php2php3php4php5php6php7php8';
preg_match_all($pattern,$str,$out);
print_r($out);
输出结果:
Array
(
[0] => Array
(
[0] => php1
[1] => php2
[2] => php3
[3] => php4
[4] => php5
)
)
4. preg_quote()函数
preg_quote()函数在每个对于正则表达式语法而言有特殊含义的字符前插入一个反斜线。
echo preg_quote('苹果的价格是:$5/千克');
输出结果:苹果的价格是:\$5/千克
5. preg_replace()函数
preg_replace()函数搜索到所有的匹配,然后替换成想要的字符串返回
$pattern='/php[1-5]/';
$str='php1php2php3php4php5php6php7php8';
echo preg_replace($pattern,'PHP',$str);
输出结果:PHPPHPPHPPHPPHPphp6php7php8
6. preg_split()函数
preg_split()函数以不区分大小写的方式分割字符串,将所得到的字串组成数组并返回
$pattern='/[\.@]/';
$str='feng.yingyuan@sina.com.cn';
print_r(preg_split($pattern,$str));
输出结果:
Array
(
[0] => feng
[1] => yingyuan
[2] => sina
[3] => com
[4] => cn
)