ID:               48433
 Updated by:       j...@php.net
 Reported By:      l_done at tiscali dot it
-Status:           Open
+Status:           Feedback
 Bug Type:         mbstring related
 Operating System: Linux/OSX
 PHP Version:      5.2.9
 New Comment:

Please try using this snapshot:

  http://snaps.php.net/php5.2-latest.tar.gz
 
For Windows:

  http://windows.php.net/snapshots/




Previous Comments:
------------------------------------------------------------------------

[2009-05-30 09:47:37] l_done at tiscali dot it

I tested this with those php versions:

PHP 5.2.9 with Suhosin-Patch 0.9.7 (cli) (built: Mar 25 2009 12:11:14)
(archlinux)
PHP 5.2.8 (cli) (built: Feb  5 2009 21:21:13) (osx)
PHP 5.2.6-3ubuntu4.1 with Suhosin-Patch 0.9.6.2 (cli) (built: Apr 23
2009 14:37:14) (ubuntu 9.04)
PHP 5.2.4-2ubuntu5.6 with Suhosin-Patch 0.9.6.2 (cli) (built: Apr 17
2009 14:31:37) (ubuntu 8.04)

------------------------------------------------------------------------

[2009-05-30 09:24:42] l_done at tiscali dot it

Description:
------------
When using alternation in negative lookbehind in a case-insensitive
regexp with mb_ereg* functions, if the alternatives are of different
lengths, the first alternative is treated in a "case-sensitive" way.

Reproduce code:
---------------
$text='
aA 1
bBb 2
cCcc 3
dDddd 4
';

$pattern='(?<!aa |bbb |cccc )[1-4]';

mb_ereg_search_init($text,$pattern,'i');
$r=mb_ereg_search_pos();
while ($r!==false) {
        $match=mb_ereg_search_getregs();
        print_r($match);
        $r=mb_ereg_search_pos();
}

Expected result:
----------------
Array
(
    [0] => 4
)


Actual result:
--------------
Array
(
    [0] => 1
)
Array
(
    [0] => 4
)



------------------------------------------------------------------------


-- 
Edit this bug report at http://bugs.php.net/?id=48433&edit=1

Reply via email to