Regex » Regular Expression, neredeyse bütün modern programlama dillerinde kullanılılan, bir metni düzenlemek yada metin içerisinden istenilen kurallara uyan alt metinler elde etmek için kullanılan bir dildir.
Regex |
Eşleşen |
Eşleşmeyen |
Açıklama |
world | Hello world | Hello Jim | İfade içinde herhangi bir yerde "world" kelimesi var |
^world | world class | Hello world | İfade "world" kelimesi ile başlar |
world$ | Hello world | world class | İfade "world" kelimesi ile biter |
world/i | This WoRLd | Hello Jim | Büyük-küçük harf duyarlılığı yoktur. |
^world$ | world | Hello world | İfade sadece "world" kelimesi içerir |
world* | worl, world, worlddd | wor | Yıldız (*) simgesi kendisinden önce gelen karakterin (veya grubun) sıfır kez (hiç) veya çok sayıda tekrar edebileceğini gösterir. |
world+ | world, worlddd | worl | Artı (+) simgesi * dan farklı olarak önceki karakter veya grubun en az bir defa bulunması koşulu getirir. Birden çok kez de tekrar edebilir. |
world? | worl, world, worly | wor, wory | Soru işareti (?) kendisinden önceki karakter veya grubun olmayabileceğini veya bir kez tekrar edebileceğini gösterir. |
world[pb] | worldp, worldb | worldy | Köşeli parantez ([]) içinde barındırdığı kalıba göre bir karakter yerine geçer. |
world{1} | world | worly | Küme Parantezi ({}) kendinden önceki karakter veya grubun tekrar edilme miktarını belirtir. "d" harfi sadece 1 defa tekrar edecek. |
world{1,} | world, worlddd | worly | Küme Parantezi ({}) kendinden önceki karakter veya grubun tekrar edilme miktarını belirtir. "d" harfi 1 veya daha fazla tekrar edilecek. |
world{2,3} | worldd, worlddd | world | Küme Parantezi ({}) kendinden önceki karakter veya grubun tekrar edilme miktarını belirtir. "d" harfi 2 veya 3 defa tekrar edilecek. |
wo(rld)* | wo, world, worldold | wa | Yıldız (*) simgesi kendisinden önce gelen karakterin (veya grubun) sıfır kez (hiç) veya çok sayıda tekrar edebileceğini gösterir. |
earth|world | earth, world | sun | "earth" veya "world" kelimeleri içerir |
w.rld | world, wwrld | wrld | Nokta (.) yerine herhangi bir karakter kullanılır. |
^.{5}$ | world, earth | sun | Tam 5 karakter uzunluğunda bir ifade |
[abc] | abc, bbaccc | sun | İfade içinde "a" veya "b" veya "c" karakterlerinden birisi bulunur. |
[a-z] | world | WORLD | Tamamı küçük harflerden oluşan ifade. |
[a-zA-Z] | world, WORLD, Worl12 | 123 | Küçük veya büyük karakterlerden oluşan ifade. |
[^wW] | earth | w, W | (^) Simgesi eğer köşeli parantez ([]) içinde kullanılırsa, bu kendisinden sonraki karakter veya grubun bulunmayacağını ifade eder. |
preg_match()
<?php
$metin = 'Hello World';
$varmi = preg_match("/World/", $metin);
if($varmi){
echo 'World Kelimesi $metin değişkeni içerisinde mevcut.';
}else{
echo 'World Kelimesi $metin değişkeni içerisinde mevcut değil.';
}
?>
preg_replace()
$input_lines="any word here related to #English must #be replaced.";
preg_replace("/(#\w+)/", "$1", $input_lines);
//any word here related to #English must #be replaced.
preg_replace("/(#\w+)/", "OLTU", $input_lines);
//any word here related to OLTU must OLTU replaced
preg_replace("/N/i", "?", $line);//N değerini ? ile değiştir
preg_replace("/\d/", "", $line);//rakamları sil
preg_replace('/\s++/', '', $line);//tüm boşlukları sil
HTML içinde özel bir etiket içinde değişiklik
<?php
$tagname="code";
$find = "/<$tagname ?.*>(.*)<\/$tagname>/";
echo preg_replace($find, '<mark>new text</mark>','<code>merhaba</code>');
?>
Regex to detect secrets from files
Regex to detect secrets from files: dosyalardan regex ile sakıncalı kelimeleri yakalamak için aşağıdaki kodları kullanabilirsiniz.
"(?i)(([a-z0-9]+)[-|_])?(key|password|passwd|pass|pwd|private|credential|auth|cred|creds|secret|access|token)([-|_][a-z]+)?(\\s)*(:|=)+"
