PHP正则匹配的函数

<?php


// $pattern = "/[0-9]/";
// $subject = "aere7ewrwef2fwer2werwq4";
// $replacement = "力";


$pattern = array("/[0123]/","/[456]/","/[789]/");
$subject = array("0wer","51fas","asfas");
$replacement = array("力","少","啊");




$a = $b = array();


// $count1 = preg_match($pattern, $subject ,$a);  //结果返回的是0或1


// $count2 = preg_match_all($pattern, $subject ,$b);//结果返回的是匹配的次数


$str1 = preg_replace($pattern, $replacement, $subject);//匹配替换
$str2 = preg_filter($pattern, $replacement, $subject); //匹配替换


//preg_replace 和 preg_filter 匹配字符串时区别不明显,正则匹配数组时才明显 如下是结果


//array(3) { [0]=> string(6) "力wer" [1]=> string(9) "少力fas" [2]=> string(5) "asfas" }
//array(2) { [0]=> string(6) "力wer" [1]=> string(9) "少力fas" }






//preg_split是explain的子集  也是正则匹配分割成数组
$subject = "wererw1dsafasd2dsafds";
$pattern = "/[0-9]/";
$arr = preg_split($pattern, $subject);
// var_dump($arr);
/*结果
array(3) {
  [0]=>
  string(6) "wererw"
  [1]=>
  string(7) "dsafasd"
  [2]=>
  string(6) "dsafds"
}


*/


//preg_grep  只匹配,不替换 类似于preg_filter只不过不替换
//preg_quote 正则运算符转义  //结果:dsafdas\{dsaf\}safsa\[sadfds\]
$str = "dsafdas{dsaf}safsa[sadfds]";
$str = preg_quote($str);
echo $str;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值