常用正则表达式

2022-09-26  本文已影响0人  Mracale
image.png
image.png
<?php  

$str = file_get_contents("test.html");


//获取图片信息
function get_images($str){
    $images = array(); 
    preg_match_all('/(img|src)=("|\')[^"\'>]+/i', $str, $media); 
    unset($data); 
    $data=preg_replace('/(img|src)("|\'|="|=\')(.*)/i',"$3",$media[0]); 
    foreach($data as $url) 
    { 
      $info = pathinfo($url); 
      if (isset($info['extension'])) 
      { 
        if (($info['extension'] == 'jpg') || 
        ($info['extension'] == 'jpeg') || 
        ($info['extension'] == 'gif') || 
        ($info['extension'] == 'png')) 
        array_push($images, $url); 
      } 
    }
    return $images;
}
//匹配一个XML或者HTML标签
//这个简单的函数有两个参数:第一个是你要匹配的标签,第二个是包含XML或HTML的变量,再强调下,这个真的很强大
function get_tag($tag, $xml) { 
 // echo $tag;die;
 // $tag = preg_quote($tag);
 $pattern = '#<'.$tag.'[^>]*>(.*?)</'.$tag.'>#';  //  /<div[^>]*>(.*?)</div>/
 // echo $pattern;die;
 preg_match_all($pattern,$xml,$matches,PREG_PATTERN_ORDER);
 return $matches[0]; 
}

//匹配所有的手机号
function get_phone($str){
    $pattern  = "/1\d{10}/";
    preg_match_all($pattern,$str,$matches);
    return $matches;
}


// $data = get_images($str);
// $data = get_tag('p',$str);
// $data = get_phone($str);

var_dump($data);
上一篇下一篇

猜你喜欢

热点阅读