PHP Conference Japan 2024

mb_eregi_replace

(PHP 4 >= 4.2.0, PHP 5, PHP 7, PHP 8)

mb_eregi_replace以多位元組支援取代正規表示式,忽略大小寫

說明

mb_eregi_replace(
    字串 $pattern,
    字串 $replacement,
    字串 $string,
    ?字串 $options = null
):字串|false|null

string 中搜尋符合 pattern 的字串,然後將匹配的文字替換為 replacement

參數

pattern

正規表示式模式。可以使用多位元組字元。大小寫將被忽略。

replacement

替代文字。

string

被搜尋的 字串

options
搜尋選項。詳情請參閱 mb_regex_set_options() 的說明。

回傳值

結果 字串 或發生錯誤時回傳 false。如果 string 對於目前的編碼無效,則回傳 null

更新日誌

版本 說明
8.0.0 options 現在可以為 null。
7.1.0 此函式會檢查 string 是否對目前的編碼有效。
7.1.0 修飾符 e 已被棄用。

注意事項

注意:

此函式將使用內部編碼或 mb_regex_encoding() 指定的字元編碼作為字元編碼。

警告

處理不受信任的輸入時,切勿使用 e 修飾符。不會進行自動跳脫字元(如同 preg_replace() 中的行為)。忽略這點很可能會在您的應用程式中造成遠端程式碼執行漏洞。

另請參閱

新增註解

使用者貢獻的註解 2 項註解

kirilatpillaxdotcom
12 年前
用於標記多位元組文字中的單字

<?php
$s
= 'Алабала';
$f = 'а';
echo
preg_replace('/('.$f.')/iu', '<b>$1</b>', $s);
?>
cat at feelthehouse dot ru
16 年前
適用於 UTF 字元的斯拉夫字母轉拉丁字母轉寫器

<?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;
}
?>
To Top