• 07-10-2017, 01:04:20
    #1
    Tek satırlı işlemlerde verileri çekebiliyorum ama alt alta olan satırlarda hep sorun yaşıyorum
    Bu şekilde olduğunda nasıl istediğimi çekebilirim.
    <li class="leaf current">
            <a href="/national/poland/i-liga/20162017/s12901/">2016/2017</a>
          </li>
    <li class="leaf current">
            <a href="(.*?)">(.*?)</a>
          </li>
  • 07-10-2017, 01:44:57
    #2
    Hocam alt alta olan ya da boşluk vs.. olan satırlarda sorun yaşamamak için önce boşlukları temizleyip ardından preg_match yapman lazım.
    Boşluksuz aşağıdaki gibi duracak, bu şekile preg_match yapmak çok daha kolay.
    <li class="leaf current"><a href="/national/poland/i-liga/20162017/s12901/">2016/2017</a></li>
    <li class="leaf current"><a href="(.*?)">(.*?)</a></li>
  • 07-10-2017, 01:49:35
    #3
    o şekilde silerek denedim ama olmadı acaba kodlarla nasıl boşlukları silip düzenli bir ifade haline getirebiliriz.
  • 07-10-2017, 01:51:18
    #4
    Benim tavsiyem şu şekilde bir kullanım olur;
    <li[^>]*>[^<]*<a href="([^"]*)">([^<]*)<\/a>[^<]*<\/li>
    Çalışan örneği: https://regex101.com/r/tX2uxy/2
  • 04-04-2020, 22:26:41
    #5
    Merhaba, ul altındaki tüm li 'leri çekiyorum lakin yan yana yazdırıyor. Alt alta nasıl yazdırabilirim?


    preg_match_all('@<ul class="breadcrumb"><li class="main">(.*?)</li></ul>@si',$site,$veri);
    echo strip_tags($veri[0][0]);

    <ul class="breadcrumb"><li class="main"><a href="/">Anasayfa </a></li>
    <li class="main"><a href="/anakategori"><span>Ana kategori</span></a></li>
    <li class="main"><a href="/altkategori1"><span>Alt Kategori 1</span></a></li>
    <li class="main"><a href="/altkategori2"><span>Alt Kategori 2</span></a></li>
    <li><span>Ürün Adı</span></li></ul>


    Çıktı:
    Anasayfa Ana kategori Alt Kategori 1 Alt Kategori 2