PHP'de düzenli ifadelerde parantez içinde soru işareti (?
), iki nokta üst üste (:
) ve yine parantez içinde ?
kullanarak isimsiz gruplanmış ifadeler ve alternatif desenler tanımlanabilir. Bu özellikle desen içinde gruplanmış ifadelere isim vermek yerine kullanılır. İşte bu belirleyicinin kullanımına örnek:
<?php
$metin = "Merhaba Dünya";
// "Merhaba" kelimesini içeren bir eşleşme bulma
if (preg_match('/(?:Merhaba|Selam) Dünya/', $metin, $eslesme)) {
echo "Eşleşen ifade: " . $eslesme[0];
} else {
echo "Eşleşme bulunamadı.";
}
?>
Bu örnekte, (?:Merhaba|Selam)
deseni ile "Merhaba" veya "Selam" kelimesini içeren bir grup oluşturulur. Ancak, bu grup isimsizdir ve sonradan referanslanamaz. Bu şekilde, grup içindeki deseni gruplamak amaçlı kullanılır, ancak grup referansı oluşturulmaz.
Parantez içindeki ?
ve iki nokta üst üste (:
) belirleyicisi, gruplanmış ifadeleri tanımlarken isim vermeden kullanılmasını sağlar.