php正则表达式

Posted on 2015-05-15 21:36  小蕊同学  阅读(121)  评论(0编辑  收藏  举报
preg_match($p,$s)有返回1,没有返回0
  1. $s="中国1人a";
  2. $p='/\d/';
  3. //echo preg_match($p,$s);//有返回1,没有返回0;
1
正则表达式验证手机号$pm='/^1[3,5,8,7]\d{9}$/';
  1. $pm='/^1[3,5,8,7]\d{9}$/';
  2. $mobile='1522154473481';
  3. if(preg_match($pm,$mobile)==true){
  4. echo '手机号输入正确';
  5. }else{
  6. echo '手机号格式错误,请检查......';
  7. }
手机号格式错误,请检查......
preg_match_all($p,$s) 返回匹配了多少回
  1. $s="中国1人a-56-112";
  2. $p='/\d/';
  3. $r=preg_match_all($p,$s);
  4. echo $r; //6
U为贪婪模式,按照最低标准走
  1. $s="中国1人a-56-112";
  2. $p='/\d{1,3}/U';
  3. $r=preg_match_all($p,$s,$rr);
  4. echo $r; //6
  5. echo '<pre>';
  6. print_r($rr);

preg_replace($p2,'*',$s)   替换
  1. $s="中国1人a-56-112";
  2. $p='/\d{1,3}/U';
  3. $p2='/\d{1,3}/';
  4. echo preg_replace($p2,'*',$s);
中国*人a-*-*
preg_replace($p2,'*',$s,100,$c)  (正则表达式,要替换的内容,含替换内容的字符串,总归可以替换多少次,总共替换多少次)
  1. $s="中国1人a-56-112";
  2. $p='/\d{1,3}/U';
  3. $p2='/\d{1,3}/';
  4. echo preg_replace($p2,'*',$s,100,$c);
  5. //100表示为可以最多替换100次,$cc为总替换多少次;
  6. echo $c;
中国*人a-*-*3
preg_split($pp,$addr) 将字符串分割成数组
  1. $addr='郑州,开封a南阳6洛阳100许昌';
  2. $pp='/[,a]|\d{1,3}/';
  3. $rr=preg_split($pp,$addr);
  4. echo '<pre>';
  5. print_r($rr);

preg_replace_callback()执行一个正则表达式搜索并且使用一个回调进行替换
  1. $s='php123java55';
  2. $p='/\d/';
  3. function a(){
  4. echo 'ok<br>';
  5. }
  6. preg_replace_callback($p,'a',$s);//有5个匹配的值所以输出5个ok

  1. $s='php123java55';
  2. $p='/\d/';
  3. function a(){
  4. echo 'ok<br>';
  5. }
  6. echo preg_replace_callback($p,'a',$s);

  1. $s='php123java55';
  2. $p='/\d/';
  3. function a($m){
  4. return $m[0].'aaa';
  5. }
  6. echo preg_replace_callback($p,'a',$s);

preg_grep($p,$s)取出包含李四的或者包含河南的数组里面的字符串
  1. $s=['河南李四','河南赵六','北京李四四','河南张三丰'];
  2. $p='/河南|李四/';
  3. $rr=preg_grep($p,$s);//取出包含李四的或者包含河南的数组里面的字符串
  4. echo '<pre>';
  5. print_r($rr);

preg_replace($p,'豫',$s)把所有的河南修改为豫
  1. $s=['河南李四','河南赵六','北京李四四','河南张三丰'];
  2. $p='/河南/';
  3. $rr=preg_replace($p,'豫',$s);//把所有的河南修改为豫
  4. echo '<pre>';
  5. print_r($rr);









Copyright © 2024 小蕊同学
Powered by .NET 9.0 on Kubernetes