• 12-01-2015, 15:45:53
    #10
    yaptığınız kural hatasıdır.aslında kodlarınız çalışıyor teknik olarak fakat regex kuralınız yanlış
    eğer regex kullanılacaksa @regexifadeleri@si gibi yada # gibi pek çok kurala uygun yazış biçimi var
    aşağıdaki kod istediğiniz çıktıyı veriyor

    $icerik = 'Deneme 123 <span style="color: white; font-family: inherit;"><a href="http://site.com/2014/07/deneme-yazisi.html"><span style="color: white;">deneme yazisi</span></a></span> deneme yazilari <a href="http://site.com/2013/08/ilk-deneme.html"><span style="color: white;">ilk deneme</span></a> ilk denemeler <span style="color: white;">son deneme</span> ve son';
     
    
    $degisecek = '@<span style="color: white; font-family: inherit;"><a href="(.*)"><span style="color: white;">(.*)</span></a></span>@si';
    $degisecek2 = '@<a href="(.*)"><span style="color: white;">(.*)</span></a>@si';
    $degisecek3 = '@<span style="color: white;">(.*)</span>@si';
     
    $icerik = preg_replace($degisecek,'',$icerik);
    $icerik = preg_replace($degisecek2,'',$icerik);
    $icerik = preg_replace($degisecek3,'',$icerik);
     
    echo $icerik;
  • 12-01-2015, 20:36:31
    #11
    lenfom adlı üyeden alıntı: mesajı görüntüle
    Malesef hocam aradığım bu değil, bu şekilde yaparsam eğer sadece preg_match ta dönen değerleri silerim ve hem o dönen değerleri ve kullanılan html taglarını silmek istiyorum.

    Tesşekkür ederim yinede...

    Aşağıdaki linki incelerseniz tam olarak ne yapmak istediğimide anlayabilirsiniz...

    https://www.r10.net/php/1328055-preg_...ink-silme.html
    içerisinden almak istediğiniz kısmı zaten alabilirsiniz $icerik = preg_replace($degisecek1[0],'',$icerik);
    kısmında '' yerine almak istediğiniz kısmı yazabilirsiniz $degisecek[0] yazarsanız hepsini alırsınız $degisecek[1] ilk (.*?) kısmı $degisecek[2] ikinci (.*?) yeri alır bunu kendinize göre uyarlayıp düzenleyebilirsiniz sizin gösterdiğiniz örneği incelediğimde içinde olan tüm veriler silinmişti bende o şekilde düzenleyip size attım...