downloads | documentation | faq | getting help | mailing lists | licenses | wiki | reporting bugs | php.net sites | links | conferences | my php.net

search for in the

mb_eregi> <mb_ereg
[edit] Last updated: Fri, 23 Mar 2012

view this page in

mb_eregi_replace

(PHP 4 >= 4.2.0, PHP 5)

mb_eregi_replaceHarf büyüklüğüne duyarsız çok baytlı karakter destekli düzenli ifade yer değiştirmesi yapar

Açıklama

string mb_eregi_replace ( string $şablon , string $yeni , string $dizge [, string $seçenek = "msri" ] )

dizge içinde şablon eşleştirilmeye çalışılır, eşleşen parça yenisi ile değiştirilir.

Değiştirgeler

şablon

Düzenli ifade olarak şablon. Çok baytlı karakterler kullanılabilir. Harf büyüklüğü dikkate alınmaz.

yeni

Yerleştirilecek metin.

dizge

İçinde şablonun aranacağı dizge.

seçenek
mb_ereg_replace() işlevindeki gibidir.

Dönen Değerler

Başarı durumunda elde edilen dizgeyle aksi takdirde FALSE ile döner.

Notlar

Bilginize:

Bu işlev karakter kodlaması olarak dahili kodlamayı veya mb_regex_encoding() işlevi tarafından belirtilen karakter kodlamasını kullanır.

Uyarı

Güvenilmez girdilerle çalışırken e değiştiricisini asla kullanmayın. Özdevinimli önceleme yapılmayacaktır (preg_replace() işlevinde olduğu gibi). Bunu dikkate almazsanız, büyük olasılıkla uygulamanızda uzaktan kod çalıştırma açıkları oluşacaktır.

Ayrıca Bakınız

  • mb_regex_encoding() - mbregex işlevleri için geçerli kodlamayı dizge olarak döndürür
  • mb_ereg_replace() - Çok baytlı karakter destekli düzenli ifade yer değiştirmesi yapar



add a note add a note User Contributed Notes mb_eregi_replace
its2dark2c at yahoo dot com 20-Aug-2011 04:36
when trying to find a way to strip newline from a multibyte UTF-8 string i got to this function just to discover later that POSIX don't "do" newline so i can't strip them, examples of what i tried are : \r\n , \\r\\n , (\\r\\n) (\\r|\\n)

and got no result
so since i wanted something like mb_nl2br() that's simple i wrote this little recursive function for UTF-8:

<?php
function mb_str_replace($find,$replace,&$str)
{
$i = mb_strpos($str,$find, 0,"UTF-8");
if (
$index===false) {return;}
$str = mb_substr($str, 0,$i).$replace.mb_substr($str, $i+mb_strlen($find,"UTF-8"),mb_strlen($str,"UTF-8"));
$this->mb_str_replace($find,$replace,$str);
}
?>

note: moderate unit tesing was done, changed to other encodings
cat at feelthehouse dot ru 13-Sep-2008 09:27
Transliterator for cyrillic-to-latin letters for UTF chars:

<?php
function do_translit($st) {
   
$replacement = array(
       
"й"=>"i","ц"=>"c","у"=>"u","к"=>"k","е"=>"e","н"=>"n",
       
"г"=>"g","ш"=>"sh","щ"=>"sh","з"=>"z","х"=>"x","ъ"=>"\'",
       
"ф"=>"f","ы"=>"i","в"=>"v","а"=>"a","п"=>"p","р"=>"r",
       
"о"=>"o","л"=>"l","д"=>"d","ж"=>"zh","э"=>"ie","ё"=>"e",
       
"я"=>"ya","ч"=>"ch","с"=>"c","м"=>"m","и"=>"i","т"=>"t",
       
"ь"=>"\'","б"=>"b","ю"=>"yu",
       
"Й"=>"I","Ц"=>"C","У"=>"U","К"=>"K","Е"=>"E","Н"=>"N",
       
"Г"=>"G","Ш"=>"SH","Щ"=>"SH","З"=>"Z","Х"=>"X","Ъ"=>"\'",
       
"Ф"=>"F","Ы"=>"I","В"=>"V","А"=>"A","П"=>"P","Р"=>"R",
       
"О"=>"O","Л"=>"L","Д"=>"D","Ж"=>"ZH","Э"=>"IE","Ё"=>"E",
       
"Я"=>"YA","Ч"=>"CH","С"=>"C","М"=>"M","И"=>"I","Т"=>"T",
       
"Ь"=>"\'","Б"=>"B","Ю"=>"YU",
    );
   
    foreach(
$replacement as $i=>$u) {
       
$st = mb_eregi_replace($i,$u,$st);
    }
    return
$st;
}
?>

 
show source | credits | stats | sitemap | contact | advertising | mirror sites