preg_replace ile Metin Değiştirme
Eşleşmeleri değiştirme dizeleri ve geriye başvurularla değiştirin.
preg_replace ile Metin Değiştirme, CoddyKit'te ücretsiz bir PHP Academy dersidir. Bu, 4 dersinin 3. 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_replace() İmzası
preg_replace($pattern, $replacement, $subject), tüm eşleşmeler değiştirilmiş şekilde subject değerini döndürür. Birden çok karakter dizisini aynı anda işlemek için subject olarak bir dizi gönderin.
Basit Değiştirme
Bir karakter dizisindeki tüm rakamları yıldız işaretiyle değiştirin.
<?php
$result = preg_replace('/\d/', '*', 'Order #12345');
echo $result; // "Order #*****"Değiştirmede Geri Başvurular
Yakalanan grupları değiştirme karakter dizisine eklemek için $1, $2... (veya \1, \2) kullanın.
<?php
$result = preg_replace('/^(\w+)\s(\w+)$/', '$2, $1', 'John Smith');
echo $result; // "Smith, John"Adlandırılmış Geri Başvurular
Adlandırılmış yakalama gruplarına değiştirmede ${name} olarak başvurulabilir.
<?php
$result = preg_replace(
'/(?P<year>\d{4})-(?P<month>\d{2})-(?P<day>\d{2})/',
'${day}/${month}/${year}',
'2025-06-15'
);
echo $result; // "15/06/2025"Birden Çok Deseni Değiştirme
Birden çok kuralı aynı anda işlemek için desen ve değiştirme dizileri gönderin.
<?php
$result = preg_replace(
['/foo/', '/bar/'],
['baz', 'qux'],
'foo and bar'
);
echo $result; // "baz and qux"Sınır Parametresi
Dördüncü parametre, yapılacak değiştirme sayısını sınırlar. Sınırsız değiştirme için -1 gönderin (varsayılan).
<?php
$result = preg_replace('/a/', 'X', 'banana', 2);
echo $result; // "bXnXna"Sayı Parametresi
Yapılan değiştirme sayısını almak için beşinci bir değişken gönderin.
<?php
$count = 0;
$result = preg_replace('/e/', '3', 'hello everyone', -1, $count);
echo "$count replacements"; // "3 replacements"preg_replace_callback()
Değiştirme mantığı karmaşık olduğunda her eşleşmeyi bir kapatma işleviyle işlemek için preg_replace_callback() kullanın.
<?php
$result = preg_replace_callback(
'/\d+/',
fn($m) => $m[0] * 2,
'Item: 5, Qty: 3'
);
echo $result; // "Item: 10, Qty: 6"HTML Etiketlerini Kaldırma Örneği
Basit bir düzenli ifadeyle tüm HTML etiketlerini kaldırın (üretimde strip_tags() kullanın).
<?php
$clean = preg_replace('/<[^>]+>/', '', '<b>Hello</b> World');
echo $clean; // "Hello World"Bir Karakter Dizisini Slug'a Dönüştürme
Bir başlığı URL ile uyumlu bir slug'a dönüştürün.
<?php
function slugify(string $s): string {
$s = strtolower($s);
$s = preg_replace('/[^a-z0-9]+/', '-', $s);
return trim($s, '-');
}
echo slugify('Hello World!'); // "hello-world"Performans Notu
Desenleri basit tutun ve felaket niteliğindeki geri izlemelerden kaçının. Birden çok preg_replace çağrısını art arda kullanmak yerine karmaşık dönüşümler için preg_replace_callback kullanın.
str_replace ile Farkı
str_replace, düz metin değiştirmede daha hızlıdır. preg_replace işlevini yalnızca bir düzenli ifade deseninin gücüne ihtiyaç duyduğunuzda kullanın.
Özet
preg_replace, bir desenin tüm eşleşmelerini değiştirir. Yakalanan grupları yeniden kullanmak için geri başvuruları ($1) kullanın. Değiştirme mantığı dinamik olduğunda preg_replace_callback kullanın.
Hızlı Kontrol
preg_replace değiştirme karakter dizisinde ilk yakalama grubuna nasıl başvurursunuz?
Sıkça Sorulan Sorular
“preg_replace ile Metin Değiştirme” dersi ücretsiz mi?
Evet — “preg_replace ile Metin Değiş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_replace ile Metin Değiştirme” dersinde ne öğreneceğim?
Eşleşmeleri değiştirme dizeleri ve geriye başvurularla değiştirin. 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 3. dersidir.
“preg_replace ile Metin Değiş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