首页  >  问答  >  正文

php - 这段正则该怎么改

刚开始学正则,试着写了一个,结果报错了,我的代码是:

<?php
$content = file_get_contents('page.html');
$preg='/^<meta property="og:image" content="{1}(.*)" />{1}$/';
if(preg_match($preg,$content,$arr)){ 
echo $arr[0]; 
}else{ 
echo "fail";
}
?>

目的是要匹配到<meta property="og:image" content="https://scontent-nrt1-1.cdninstagram.com/t51.2885-15/e35/19428654_117834015492201_3447552780867207168_n.jpg" />中的地址。

给我你的怀抱给我你的怀抱2669 天前844

全部回复(4)我来回复

  • 怪我咯

    怪我咯2017-06-29 10:10:37

    雷雷

    回复
    0
  • PHP中文网

    PHP中文网2017-06-29 10:10:37

    你别加开始和结束符号,匹配出内容的话,不应该加开始结束符号。。。。

    回复
    0
  • 曾经蜡笔没有小新

    曾经蜡笔没有小新2017-06-29 10:10:37

    目测是{1}那里错了

    回复
    0
  • 女神的闺蜜爱上我

    女神的闺蜜爱上我2017-06-29 10:10:37

    ,这个也可以。。不过很奇怪,print_r和var_dump出来的不一样

    $str = '<meta property="og:image" content="https://scontent-nrt1-1.cdninstagram.com/t51.2885-15/e35/19436259_259857144497308_9134693580806291456_n.jpg" />';
    
    $preg='/^<meta property="og:image" content="([^\"]*)"/';
    if(preg_match($preg, $str, $arr)){
        echo "<pre>";
    
        var_dump($arr);
    
        print_r($arr);
    
        echo $arr['1'];
    }else{
        echo "fail";
    }

    回复
    0
  • 取消回复