Regular Expression – Regex

Regular Expression php ile arama ve değiştirme işlemlerinde kullanılan özel bir sistemdir. Bunu farklı ortamlardaki * karakterine benzetebilirsiniz. Adını bilmediğimiz bir kelimenin yerine * koyarak arama yapabiliriz.

Örneğin windows ile bir dosya ararken *.doc dediğinizde windows size uzantısı DOC olan tüm dosyaları gösterecektir. Buradaki * karakteri bilinmeyen isim anlamına gelmektedir.  İşte regular expression (kısaca regex) tam olarak buna benzer bir işlem yapmaktadır. Yine benzetmeden yola çıkarak devam etmek gerekirse regex ile kullanılan bilinmeyen kelime ? (soru işareti) veya .(nokta) işaretidir.

Diyelim ki Regex ile 4 harfli bir kelime arıyoruz.

A??? şeklinde yazarsak bu durumda Ayça, Aliş, Azim gibi baş harfi A olan isimlerin hepsini bulacaktır.

Daha uzun harfli bir arama yapıyorsak tek tek ? koymak yerine + koyabiliriz.

+ karakteri = sonsuz sayıda olabilir demektir.

örneğin baş harfi A olan herhangi bir kelime arıyoruz.

A?+

Aynı şekilde bir örnek; Başı A olan 10 harflik bir kelime arıyoruz, ? işaretinden sonra konulan parantezli sayı Soru işaretinin kaç kere tekrar edeceğini gösterir. Soru işareti ise bilinmeyen karakter olduğu için “Başı A olan 10 harflik bir kelime” anlamına gelir.

A?{10}

Kullanımda sistemden sisteme farklılıklar olsa bile çalışma şekli buna benzer şekildedir.

Özel karakterler:
^ . $ | ( ) [ ] * + ? { } ,

Özel Karakter Tanımları:

Sonraki karakteri harf olarka tanımlar
^ Satır başında arar
. Satırbaşı hariç herhangi bir harf
$ Satır sonu karakteri
| Lojik OR ifadesi
() Arama grubu
[] Kelime grubu
* En az 0 kere tekrar eden karakter
+ En az 1 kere olması gerekir
? Aranan karakter 1 kere veya 0 kere olabilir
{n} Aranan karakter sayısı
{n,} Aranan harfin en az n kere olması gerekir
{n,m} Aranan sayı limitinin alt ve üst sınırı

Özel Klavye Harfleri:

tab tuşu
satır başı
Enter
f Form beslemesi
a Sinyal sesi
e ESC tuşu
33 octal karakter
x1B hex karakter
c[ Kontrol tuşu
l sonraki harf küçük harflidir
u sonraki harf büyükharflidir
L bundan sonar E gelene kadar hepsi küçük harf
U bundan sonar E gelene kadar hepsi büyük harf
E Sonlandırıcı
Q Bundan sonra E gelene kadar normal karakter

Diğer Özel Karakterler:

w Alfabetik karakterler ve “_”
W Alfabetik olmayan karakter asyı ve özel işaret olabilir
s Boşluklar
S Boşluk olmayanlar
d Dijital karakter
D Dijital olmayan karakter
Kelime sınırları
B Kelime sınırı olmayanlar
A Kelimenin başı
Kelimenin sonu
z Sadece kelime sonu

Alıntıdır. Düzenlenmiştir.