搜尋

首頁  >  問答  >  主體

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_348428654_117834015492201_3475757020202020000000000022202020202020202020200000022522_jpn. />中的位址。

给我你的怀抱给我你的怀抱2706 天前875

全部回覆(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
  • 取消回覆