Düzenli İfade Fonksiyonları

Merhabalar, birçok kez preg_match konusunda problem çektiğimiz için size tüm kaynaklardan alınmış açıklayıcı bir makale hazırlama ihtiyacı duydum

Öncelikle bu iki terimin ne olduğuna bakalım

<b>POSIX</b>, (Portable Operating System Interface for Unix) UNIX için Taşınabilir İşletim Sistemi Arabirimi.
<b>PCRE</b>, (Perl Compatible Regular Expressions) Perl Uyumlu Düzenli İfadeler

Öncelikle PHP 5.3.0 ile yayından kalkan POSIX ve yerine kullanılacak olan PCRE fonksiyonlarına bir gözatalım.

POSIX PCRE
ereg_replace () preg_replace ()
ereg () preg_match ()
eregi_replace () preg_replace ()
eregi () preg_match ()
split () preg_split ()
spliti () preg_split ()
sql_regcase () Eşdeğer Yok

Peki nedir bu preg fonksiyonları?

preg_grep Koşula uyan dizi elemanlarını seçer. Ör:
$fl_array = preg_grep("/^(\d+)?\.\d+$/", $array);
preg_match Regexp koşulunu metne uygular, sonuçlar diziye aktarılır. Ör:
preg_match($pattern, $subject, $matches, PREG_OFFSET_CAPTURE, 3);
preg_match_all İki boyutlu dizi kullanarak preg_match tan farklı olarak grup elemanlarını da ayırır. Ör:
preg_match_all("|<[^>]+>(.*)</[^>]+>|U",<br> "<b>example: </b><div align=left>this is a test</div>",<br> $out, PREG_PATTERN_ORDER);
preg_replace Bul değiştir işlemini regexp uygunluğuna göre yapar. Ör:
$string = 'April 15, 2003';<br> $pattern = '/(\w+) (\d+), (\d+)/i';<br> $replacement = '${1}1,$3';<br> echo preg_replace($pattern, $replacement, $string);
preg_replace_callback preg_replace’den farklı olarak değiştirme işleminde PHP fonksiyonunu kullanır. Bu durum çok daha kapsamlı değişim yapabilme olanağı sağlar.
preg_split Regexp uyumuna göre metni bölme işlemi yapar. Ör:
$keywords = preg_split("/[\s,]+/", "hypertext<br><br />
language, programming");