#39999 [Opn]: mb_eregi_replace() and mb_ereg_replace() is not caseinsensitive for multibyte

From: Date: Tue, 02 Jan 2007 09:41:49 +0000
Subject: #39999 [Opn]: mb_eregi_replace() and mb_ereg_replace() is not caseinsensitive for multibyte
References: 1  Groups: php.bugs 
Request: Send a blank email to php-bugs+get-107099@lists.php.net to get a copy of this message
ID: 39999 User updated by: zilvinas at speros dot lt Reported By: zilvinas at speros dot lt Status: Open -Bug Type: Strings related +Bug Type: mbstring related Operating System: Debian 2.6.12-1-k7-smp PHP Version: 5.2.0 New Comment: changed category Previous Comments: ------------------------------------------------------------------------ [2007-01-02 09:37:59] zilvinas at speros dot lt A more simplistic example to reproduce the problem: Reproduce code: --------------- <? mb_internal_encoding('UTF-8'); mb_regex_encoding('UTF-8'); $pattern = 'š'; //s 'crown' $replace = 'X'; $subject = 'Šiltas, šiltas'; $result = mb_eregi_replace($pattern, $replace, $subject); echo $result; ?> Expected result: -------------- Xiltas, Xiltas Actual result: -------------- Šiltas, Xiltas ------------------------------------------------------------------------ [2007-01-02 08:45:09] zilvinas at speros dot lt Description: ------------ The function mb_eregi_replace() and/or function mb_ereg_replace() with 'i' option is not caseinsensitive for multibyte characters. Reproduce code: --------------- <?php mb_regex_encoding('UTF-8'); $pattern = utf8_encode('ü'); $replace = 'X'; $subject = utf8_encode('ÜBER über'); $result = mb_eregi_replace($pattern, $replace, $subject); //$result = mb_ereg_replace($pattern, $replace, $subject, 'i'); echo utf8_decode($result) . "\n"; ?> Expected result: ---------------- XBER Xber Actual result: -------------- ÜBER Xber ------------------------------------------------------------------------ -- Edit this bug report at http://bugs.php.net/?id=39999&edit=1

« previous php.bugs (#107099) next »