Normal İfadelere Giriş Kılavuzu

Yaygın olarak regex veya regexp olarak bilinen Normal İfadeler, arama kalıplarını oluşturan karakter dizileridir. Öncelikle dize eşleştirme ve manipülasyon için kullanılırlar. Regex, metinden veri aramak, değiştirmek ve çıkarmak için inanılmaz derecede güçlü olabilir.

Temel Söz Dizimi

Düzenli ifadeler, değişmez karakterler ile meta karakter adı verilen özel karakterlerin birleşiminden oluşur. İşte bazı temel bileşenler:

  • Değişmez Karakterler: Bunlar kendileriyle eşleşen normal karakterlerdir. Örneğin, cat normal ifadesi, "cat" dizesiyle eşleşir.
  • Metakarakterler: Bu karakterlerin özel anlamları vardır ve karmaşık modeller oluşturmak için kullanılırlar. Örnekler arasında ., *, +, ?, [], {}, () ve |.

Ortak Meta Karakterler

Aşağıda en sık kullanılan meta karakterlerden bazıları ve bunların işlevleri verilmiştir:

  1. . - Yeni satır dışında herhangi bir tek karakterle eşleşir.
  2. * - Önceki öğenin 0 veya daha fazla tekrarıyla eşleşir.
  3. + - Önceki öğenin 1 veya daha fazla tekrarıyla eşleşir.
  4. ? - Önceki öğenin 0 veya 1 tekrarıyla eşleşir.
  5. [] - Parantez içindeki karakterlerden herhangi birini eşleştirmek için kullanılır.
  6. {} - Önceki öğenin belirli sayıdaki oluşumunu belirtir.
  7. () - Birden fazla jetonu birlikte gruplandırır ve yakalama grupları oluşturur.
  8. | - VEYA operatörü gibi davranır.

Temel Kalıp Örnekleri

Bazı temel normal ifade kalıplarını örneklerle inceleyelim:

cat

Metnin herhangi bir yerindeki "cat" dizesiyle eşleşir.

.at

"a", ardından herhangi bir karakter ve ardından "t" içeren herhangi bir dizeyle eşleşir. Örneğin, "cat", "bat", "hat".

\d{3}

Tam olarak üç rakamla eşleşiyor. Örneğin, "123", "456", "789".

[a-z]

"a" ile "z" arasındaki herhangi bir küçük harfle eşleşir.

(dog|cat)

"dog" veya "cat" ile eşleşir.

Regex'in Programlamada Kullanımı

Düzenli ifadeler birçok programlama dilinde desteklenir. Regex'in Python ve JavaScript'te nasıl kullanılacağına dair örnekler:

Python Örneği

import re

# Search for 'cat' in a string
pattern = r'cat'
text = 'The cat sat on the mat.'
match = re.search(pattern, text)

if match:
    print('Match found:', match.group())
else:
    print('No match found')

JavaScript Örneği

// Search for 'cat' in a string
const pattern = /cat/;
const text = 'The cat sat on the mat.';
const match = text.match(pattern);

if (match) {
    console.log('Match found:', match[0]);
} else {
    console.log('No match found');
}

Çözüm

Düzenli ifadeler, metin işleme ve veri çıkarma için güçlü bir araçtır. Temel sözdizimini ve ortak kalıpları anlayarak, metin işleme yeteneklerinizi kolaylaştırmak ve geliştirmek için projelerinizde normal ifadeyi kullanmaya başlayabilirsiniz. Daha yetkin olmak için farklı kalıplarla pratik yapın ve düzenli ifadelerin gelişmiş özelliklerini keşfedin.