Php Regular Expressions - 1

fikretyn 

Moderatör
moderatör rank
Katılım
12 Mar 2024
Konular
38
Mesajlar
49
Tepkime puanı
23
Çevrimiçi zaman
14 saat 5 dakika
Konum
samsun
Ticaret
0 / 0 / 0
1 - Metin: İşlem yapmak istediğiniz herhangi bir dize veya metin parçası.
2 - Regular İfade (Regular Expression): Belli bir deseni ifade eden karakterlerin bir dizisi. Örneğin, "/[a-z]+/" bir regular ifadedir ve "a" ile "z" arasında küçük harflerden oluşan bir diziyi eşleştirecektir.
3 - Metin Eşleştirme: Bir regular ifadeyi bir metinde aramak ve bu ifadeyle eşleşen kısımları bulmak.
4 - Eşleşme Deseni (Pattern Matching): Bir regular ifadenin bir metinde eşleştiği yerleri bulma işlemi.
5 - Fonksiyonlar: PHP'de regular ifadelerle çalışmak için kullanabileceğiniz bir dizi işlev bulunmaktadır. Bunlar arasında preg_match(), preg_match_all(), preg_replace(), preg_split() gibi yaygın olarak kullanılanlar vardır.
Modifikatörler: Regular ifadelerle birlikte kullanılan ek karakterlerdir. Örneğin, "i" modifikatörü büyük/küçük harf duyarlılığını kaldırır.
Meta-karakterler: Regular ifadelerde özel anlamları olan karakterlerdir. Örneğin, "." bir meta-karakterdir ve herhangi bir tek karakteri temsil eder.
Özel karakterler: Regular ifadelerde kullanılan ve özel anlamları olmayan karakterlerdir. Örneğin, "a" özel bir karakterdir ve sadece kendisiyle eşleşir.


örnek:
PHP:
<?php
// Metin
$metin = "Merhaba, dünya!";

// Regular ifade
$desen = "/[a-z]+/";

// Eşleştirme yap
preg_match_all($desen, $metin, $eslesmeler);

// Eşleşenleri ekrana yazdır
print_r($eslesmeler);
?>

Bu örnekte, "Merhaba, dünya!" metni üzerinde küçük harf desenlerini arıyoruz. preg_match_all() işlevi bu desene uyan tüm kısımları bulacak ve $eslesmeler dizisine kaydedecektir. Sonuç olarak, bu dizi ekrana yazdırılacak ve eşleşen kelimeleri içerecektir.

Bu temel kavramlar ve örnek kullanım, PHP'de regular ifadelerle çalışmanın ana hatlarını anlamanıza yardımcı olabilir. Daha fazla karmaşık desenler ve kullanım senaryoları için PHP belgelerine başvurabilirsiniz.

  1. Meta-karakterler ve Özel Karakterler:
    • Meta-karakterler: Regular ifadelerde özel anlamları olan karakterlerdir. Bazıları:
      • .: Herhangi bir tek karakteri temsil eder.
      • ^: Satır başını belirtir.
      • $: Satır sonunu belirtir.
      • *: Önceki karakterin sıfır veya daha fazla tekrarını belirtir.
      • +: Önceki karakterin bir veya daha fazla tekrarını belirtir.
      • ?: Önceki karakterin sıfır veya bir kez tekrarını belirtir.
      • []: Belirli karakterler kümesini belirtir.
      • {}: Belirli bir tekrar aralığını belirtir.
      • |: Alternatif ifadeleri belirtir.
      • \: Özel bir karakteri kaçırmak için kullanılır.
    • Özel Karakterler: Regular ifadelerde normal karakterler olarak kabul edilen karakterlerdir. Ancak bazı durumlarda özel bir anlam kazanabilirler. Örneğin, "a" harfi normal bir karakter iken, "\n" bir alt satır karakterini temsil eder.
  2. Modifikatörler: Regular ifadelerle birlikte kullanılan ek karakterlerdir. Örneğin:
    • i: Büyük/küçük harf duyarlılığını kaldırır.
    • m: Birden çok satır modunu etkinleştirir.
    • s: Metin akışını tek satır olarak işler.
    • u: UTF-8 modunu etkinleştirir.
    • g: Küresel arama modunu etkinleştirir.
  3. Fonksiyonlar: PHP'de regular ifadelerle çalışmak için kullanabileceğiniz bir dizi işlev bulunmaktadır. Bunlar arasında:
    • preg_match(): Bir regular ifadeyi bir metin içinde arar ve ilk eşleşen diziyi döndürür.
    • preg_match_all(): Bir regular ifadeyi bir metin içinde arar ve tüm eşleşen dizileri döndürür.
    • preg_replace(): Bir regular ifadeye uyan tüm kısımları başka bir dizgeyle değiştirir.
    • preg_split(): Bir metni bir regular ifadeye göre bölerek bir diziye dönüştürür.
  4. Örnekler:
    • Metinler üzerinde e-posta adresleri, telefon numaraları gibi belirli desenleri arama.
    • HTML kodlarında belirli etiketleri veya özellikleri değiştirme.
    • URL'lerdeki belirli parametreleri çıkarma veya değiştirme.
  5. Daha Karmaşık Desenler:
    • () ile gruplama ve alt ifadeler oluşturma.
    • \b ile kelime sınırlarını belirtme.
    • Lookahead ve lookbehind ifadeleri kullanarak ileri ve geriye bakma işlemleri yapma.
PHP'nin regular ifadelerle ilgili belgelerini incelemek, daha fazla detay ve örnek bulabilirsiniz. Ayrıca, düzenli ifadelerle ilgili çevrimiçi interaktif araçlar ve uygulamalar da kullanarak pratik yapabilirsiniz.

örnekler

  1. E-posta Adresi Kontrolü:
PHP:
$email = "ornek@example.com";

if (preg_match("/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/", $email)) {
    echo "Geçerli bir e-posta adresi.";
} else {
    echo "Geçersiz bir e-posta adresi.";
}
Bu örnekte, preg_match() fonksiyonuyla bir regular ifade kullanarak $email değişkenindeki metni e-posta adresi formatına uygun olup olmadığını kontrol ediyoruz.

  1. HTML Etiketlerini Değiştirme
PHP:
$html = "<p>Merhaba, <b>dünya</b>!</p>";

$new_html = preg_replace("/<b>(.*?)<\/b>/", "<strong>$1</strong>", $html);

echo $new_html;
Bu örnekte, preg_replace() fonksiyonuyla bir regular ifade kullanarak <b> ve </b> etiketleri arasındaki metni <strong> etiketiyle değiştiriyoruz.

  1. URL Parametrelerini Alma:
PHP:
$url = "http://www.example.com/page.php?name=John&age=30";

preg_match_all("/[?&]([^=]+)=([^&]+)/", $url, $matches);

$params = array_combine($matches[1], $matches[2]);

print_r($params);
Bu örnekte, preg_match_all() fonksiyonuyla bir regular ifade kullanarak URL'deki parametreleri (name=John ve age=30) ayıklıyoruz ve bunları bir diziye dönüştürüyoruz.
Bu örnekler, regular ifadelerin farklı kullanım senaryolarını göstermektedir. Her bir örnekte, belirli bir deseni ifade eden bir regular ifade kullanarak metin üzerinde arama, değiştirme veya işleme gerçekleştiriyoruz. Bu örnekler, PHP'de regular ifadelerin gücünü ve esnekliğini göstermektedir.
 
Son düzenleme:

Benzer konular

Ana Sayfa Kayıt Ol Giriş Yap
Üst