⊗ppPmRgSP 248 of 447 menu

Düzenli İfadelerle PHP'de Arama Yaparken Yakalama Grupları

Diyelim ki bir etki alanı içeren bir dizgimiz var:

<?php $str = 'eee site.ru bbb'; ?>

Bu etki alanını bulup onu parçalara ayıralım: etki alanı adını bölgesinden ayıralım. Bunun için düzenli ifadelerin özel yakalama gruplarını kullanacağız.

Yakalama grupları, bulunan kısmın parçalarını koyabileceğiniz dizi elemanlarıdır. Bizim durumumuzda, birinci yakalama grubuna etki alanı adını, ikinciye ise bölgesini koyabiliriz.

Bunu yapalım. Öncelikle dizgideki etki alanını bulan bir düzenli ifade yazalım:

<?php $reg = '#[a-z0-9_-]+\.[a-z]{2,}#'; ?>

Şimdi düzenli ifademizde hangi parçaların hangi yakalama grubuna düşeceğini belirleyelim. Bu, yuvarlak parantezler kullanılarak yapılır. Bunlarla etki alanı adını arayan kısmı ve etki alanı bölgesini arayan kısmı ayıralım:

<?php $reg = '#([a-z0-9_-]+)\.([a-z]{2,})#'; ?>

Şimdi preg_match işlevinde üçüncü parametre olarak bir değişken belirtelim (herhangi bir isimde):

<?php preg_match($reg, $str, $res); ?>

Belirtilen değişkene, bulunan yakalama gruplarıyla dolu bir dizi gelecektir. Dizinin sıfırıncı elemanında bulunan dizgi, birinci elemanında - birinci yakalama grubu, ikinci elemanında - ikinci yakalama grubu ve bu şekilde devam edecektir:

<?php preg_match($reg, $str, $res); var_dump($res); // ['site.ru', 'site', 'ru'] çıktısını verir ?>

Bir tarih dizgisi verilmiştir:

<?php $str = '2025-12-31'; ?>

Yılı, ayı ve günü ayrı yakalama gruplarına koyun.

Bir dosya adı dizgisi verilmiştir:

<?php $str = 'index.html'; ?>

Dosya adını ve uzantısını ayrı yakalama gruplarına koyun.

Türkçe
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenЎзбекOʻzbekTiếng Việt
Web sitesinin çalışması, analiz ve kişiselleştirme için çerezleri kullanıyoruz. Veri işleme, Gizlilik Politikası'na uygun olarak gerçekleşir.
tümünü kabul et özelleştir reddet