preg_match ile Eşleştirme
Dizeleri kalıplara göre sınayın ve grupları yakalayın.
preg_match ile Eşleştirme, CoddyKit'te ücretsiz bir PHP Academy dersidir. Bu, 4 dersinin 2. dersidir. Aşağıdan dersin tamamını ücretsiz okuyabilir, sonra tarayıcıda yerleşik kod editörü ve 7/24 yapay zeka koçu ile uygulamalı olarak pratik yapabilirsin. Bu, PHP Academy öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. PHP Academy kursu toplamda 4 dersten oluşur.
preg_match() İmzası
preg_match($pattern, $subject, &$matches), desen eşleşirse 1, eşleşmezse 0, hata oluşursa false döndürür.
Basit Eşleşme Denetimi
preg_match işlevini bir doğru/yanlış denetimi olarak kullanın; 1 dönüş değeri eşleşmenin bulunduğu anlamına gelir.
<?php
$email = "user@example.com";
if (preg_match('/\w+@\w+\.\w+/', $email)) {
echo "Looks like an email";
}$matches ile Yakalama Grupları
$matches[0] tam eşleşmedir; $matches[1], $matches[2]... yakalama gruplarıdır.
<?php
preg_match('/^(\w+)\s(\w+)$/', "John Smith", $m);
echo $m[1]; // "John"
echo $m[2]; // "Smith"Adlandırılmış Yakalamalar
Adlandırılmış yakalama grupları için (?P<name>...) kullanın; bunlara $matches["name"] olarak erişilir.
<?php
preg_match('/(?P<year>\d{4})-(?P<month>\d{2})-(?P<day>\d{2})/',
'2025-06-15', $m);
echo $m['year']; // 2025Ofset Parametresi
Dördüncü parametre, eşleştirmenin karakter dizisinin neresinden başlayacağını belirtir (bayt ofseti).
<?php
preg_match('/\d+/', 'abc123def456', $m, 0, 3);
echo $m[0]; // "123"PREG_OFFSET_CAPTURE
Hem eşleşme değerini hem de bayt ofsetini alın.
<?php
preg_match('/\d+/', "price: 42 USD", $m, PREG_OFFSET_CAPTURE);
echo $m[0][0]; // "42"
echo $m[0][1]; // 7 (byte offset)preg_match_all()
preg_match_all() tüm eşleşmeleri bulur ve sayıyı döndürür.
<?php
$html = '<a href="a.com">A</a> <a href="b.com">B</a>';
preg_match_all('/<a href="([^"]+)">/', $html, $m);
print_r($m[1]); // ["a.com", "b.com"]E-posta Doğrulama Örneği
Uygulamalı bir e-posta düzenli ifadesi:
<?php
function isEmail(string $s): bool {
return (bool) preg_match(
'/^[a-zA-Z0-9._%+\-]+@[a-zA-Z0-9.\-]+\.[a-zA-Z]{2,}$/',
$s
);
}Telefon Doğrulama
Uluslararası telefon numaralarını doğrulayın:
<?php
preg_match('/^\+?[1-9]\d{7,14}$/', '+1234567890', $m);Hataları Ele Alma
Desen geçersizse preg_match(), false döndürür. === false ile denetleyin ve ayrıntılar için preg_last_error() kullanın.
Performans İpucu
PHP, derlenmiş PCRE desenlerini dahili olarak önbelleğe alır; aynı düzenli ifadeyi bir döngüde kullanıyorsanız ek bir adım gerekmez.
Düzenli İfade Ne Zaman Kullanılmamalı?
Yapılandırılmış veriler için PHP'nin özel işlevleri vardır: filter_var(FILTER_VALIDATE_EMAIL), parse_url(). Elle yazılmış düzenli ifadeler yerine bunları tercih edin.
Hızlı Kontrol
preg_match sonrasında $matches[0] ne içerir?
Sıkça Sorulan Sorular
“preg_match ile Eşleştirme” dersi ücretsiz mi?
Evet — “preg_match ile Eşleştirme” dersin tüm metni burada web'de ücretsiz olarak okunabilir. Etkileşimli olarak pratik yapmak (yerleşik kod editörü ve 7/24 yapay zeka koçu) ve PHP Academy kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. PHP Academy kursu toplamda 4 dersten oluşur.
“preg_match ile Eşleştirme” dersinde ne öğreneceğim?
Dizeleri kalıplara göre sınayın ve grupları yakalayın. PHP Academy ile uygulamalı kodu tarayıcıda doğrudan çalıştırarak pratik yaparsın ve 7/24 yapay zeka koçu dersi çalışırken sorularını yanıtlar.
PHP Academy öğrenmeye başlamak için deneyim gerekli mi?
Önceden deneyim gerekmez. CoddyKit'te PHP Academy, başlangıçtan ileri seviyeye kadar yapılandırıldığı için buradan başlayabilir veya başından başlayıp kendi hızında ilerleme yapabilirsin. Bu, 4 dersinin 2. dersidir.
“preg_match ile Eşleştirme” dersi ne kadar sürer?
Çoğu CoddyKit dersi yaklaşık 5–10 dakika sürer. Her biri kısa ve etkileşimli olduğu için sabit ilerleme yaparsın ve web ile uygulama arasında tam olarak bıraktığın yerden devam edebilirsin.
Bu PHP Academy dersinde kod yazıp çalıştırabilir miyim?
Evet. Her PHP Academy dersi yerleşik bir kod editörü içerir, bu sayede tarayıcıda gerçek kod yazıp çalıştırabilir ve anlık yapay zeka geri bildirimi alırsın — yerel kurulum gerekli değildir.
Bu kursun tüm dersleri
- Düzenli İfade Söz Diziminin Temelleri
- preg_match ile Eşleştirme
- preg_replace ile Metin Değiştirme
- Bölme ve Uygulamalı Kalıplar