/*
preg_grep -- 返回与模式匹配的数组单元
preg_last_error -- <span class="high-light-bg">返回上次</span><span>PCRE</span><span>正则表达式</span><span>执行</span><span>错误代码</span>
preg_match_all -- 进行全局正则表达式匹配
preg_match -- 进行正则表达式匹配
preg_quote -- 转义正则表达式字符
preg_replace_callback -- 用回调函数执行正则表达式的搜索和替换
preg_replace -- 执行正则表达式的搜索和替换
preg_split -- 用正则表达式分割字符串
*/
$arr=array('s','Sdf','bbb');
$pattern="/s/i";
$values= preg_grep($pattern, $arr,0);
//preg_grep 第一个参数必须正则表达式字符串,第二个参数是要匹配的数组,
// 第三个参数默认为偶数,返回匹配到的。如果为奇数,则返回匹配不到的数组。
$str="tshiss is demo's";
$pattern="/s/i";
$num=preg_match($pattern,$str,$arr,PREG_OFFSET_CAPTURE);
//$num 值为1 ,因为preg_match值匹配一次,要么返回0,要么返回1
echo $num;
//返回匹配的内容, 如果有第四个参数 PREG_OFFSET_CAPTURE,则返回匹配的偏移量,这里为2
var_dump($arr);
$str="tshiss is demo's";
$pattern="/s/i";
$num=preg_match_all($pattern,$str,$arr,PREG_OFFSET_CAPTURE);
//返回匹配的总次数
echo $num;
//返回每个匹配的偏移量
var_dump($arr);
/* preg_match 可以没有第三个参数 , preg_match_all 必须有第三个参数*/
$str="/(\d){2}/";
//转义正则表达式语法字符。 第二个参数可选,可以指定转义的字符
$res=preg_quote($str,'2');
var_dump($res);
/*mixed preg_replace ( mixed pattern, mixed replacement, mixed subject [, int limit] )*/
$pattern=array("/s/i","/i/");
$replacement=array("我是大S",'ai');
$subject=array('this','ii','iss');
//如果搜索到匹配项,则会返回被替换后的 subject,否则返回原来不变的 subject。
$arr=preg_replace($pattern,$replacement,$subject,1);
var_dump($arr);
/* array preg_split ( string pattern, string subject [, int limit [, int flags]] ) */
$pattern='/s/i';
$subject="1s shi s";
$arr=preg_split($pattern,$subject,-1,PREG_SPLIT_DELIM_CAPTURE);
var_dump($arr);
php----正则表达式所用到的函数
最新推荐文章于 2024-08-22 09:44:18 发布