199 of 410 menu

preg_match Fonksiyonu

preg_match fonksiyonu, bir dizgede düzenli ifade eşleşmelerini arar. İlk parametre olarak düzenli ifade kalıbını, ikinci parametre olarak arama yapılacak dizgeyi, üçüncü parametre olarak (isteğe bağlı) bulunan eşleşmeleri kaydetmek için bir dizi, dördüncü parametre olarak (isteğe bağlı) bayrakları, beşinci parametre olarak (isteğe bağlı) aramanın başlangıç konumunu alır.

Sözdizimi

preg_match(pattern, subject, [matches], [flags], [offset]);

Bayraklar

Bayrak Sabit Açıklama
PREG_PATTERN_ORDER 1 Sonuçlar kalıplara göre sıralanır (varsayılan)
PREG_SET_ORDER 2 Sonuçlar eşleşme setlerine göre sıralanır
PREG_OFFSET_CAPTURE 256 Eşleşmenin dizgedeki konumunu döndürür
PREG_UNMATCHED_AS_NULL 512 Eşleşmeyen alt kalıplar NULL olarak döndürülür

Örnek

Bir dizgenin rakam içerip içermediğini kontrol edelim:

<?php $res = preg_match('/\d+/', 'abc123'); echo $res; ?>

Kodun çalıştırılma sonucu:

1

Örnek

Bir dizgedeki tüm rakamları bir diziye çıkaralım:

<?php preg_match('/\d+/', 'abc123', $matches); var_dump($matches); ?>

Kodun çalıştırılma sonucu:

[0 => '123']

Örnek

Düzenli ifadede adlandırılmış grupların kullanımı:

<?php preg_match('/(?P<name>\w+)\s+(?P<age>\d+)/', 'John 25', $matches); var_dump($matches); ?>

Kodun çalıştırılma sonucu:

[ 0 => 'John 25', 'name' => 'John', 1 => 'John', 'age' => '25', 2 => '25' ]

Örnek

Eşleşme konumunu almak için PREG_OFFSET_CAPTURE bayrağının kullanımı:

<?php preg_match('/\d+/', 'abc123', $matches, PREG_OFFSET_CAPTURE); var_dump($matches); ?>

Kodun çalıştırılma sonucu:

[ 0 => [ 0 => '123', 1 => 3 ] ]

Örnek

Başlangıç konumu (offset) belirterek arama:

<?php preg_match('/\d+/', '123abc456', $matches, 0, 3); var_dump($matches); ?>

Kodun çalıştırılma sonucu:

[0 => '456']

Örnek

E-posta adresi geçerlilik kontrolü:

<?php $email = 'test@example.com'; $res = preg_match('/^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$/', $email); echo $res ? 'Valid' : 'Invalid'; ?>

Kodun çalıştırılma sonucu:

'Valid'

Ayrıca Bakınız

  • preg_match_all fonksiyonu,
    bir dizgedeki tüm eşleşmeleri arar
  • preg_replace fonksiyonu,
    düzenli ifadeye göre değiştirme işlemi yapar
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