Kendi kendime hem preg_match_all hem de regex ifadelerin kullanımını öğrenmeye çalışıyorum. Ama kafam bu regex e pek basmıyor gibi.
Birçok çözümü internet üzerinden buldum fakat çözümünün mümkün olup olmadığını bilmediğim -ki olduğunu düşünüyorum- bir yerde takıldım.
Kaynağı alınan bir sayfadaki aynı class name e sahip elemanları almaya çalışıyorum. elemanda sadece class olunca tamam da class dan sonra her eleman için ayrı ayrı id değerleri de girince araya işin içinden çıkamadım. Nasıl bir sonuçla karşılaştığımı aşağıdaki kodları komple kopyala yapıştır yaparak anlayabilirsiniz. id yazılarını yok saymak için nasıl bir regex yazmak gerekli?


setlocale(LC_ALL,"turkish");
function viki_gun($date) {
return iconv('latin5','utf-8',strftime('%d_%B',strtotime($date)));
}

$ch = curl_init("https://tr.wikipedia.org/wiki/".viki_gun(date("Y-m-d")));
curl_setopt($ch,CURLOPT_RETURNTRANSFER, 1);
$result = curl_exec($ch);

curl_close($ch);


$basliklar = '@@si';

preg_match_all($basliklar, $result,$baslik);

print_r($baslik);


edit: Denerken şöyle bir pattern ile istediğim sonucu aldım ama bilinçli yaptığım bir şey değil, yine de yaptığım şeyin doğruluğu-yanlışlığı veya olayın mantığı hakkında fikirlere açığım.

$basliklar = '@(.*?)@si';