PHP 5.3 (currently alpha 3, expected release sometime in 2009) will deprecate the ereg*() suite of POSIX regular expression functions, so they must be replaced with preg*() equivalents.
I did a quick search for "ereg" in the public 3.1.0-english codebase and made the necessary changes. I have not tested these extensively by any means, but in most cases they were simple replacements and my copy seems to run fine in basic usage on PHP 5.3alpha3.
A few files have comments that refer to ereg*() functions even though ereg*() functions are not actually called in those functions; I ignored these.
A few files build regex patterns using variables from an external source, which I didn't take the time to trace back and analyze for whether they might contain standard preg delimeters ("/"). In these cases I just wrapped the variable in addcslashes($v,'/') to escape them.
Attached is my diff, hope its useful.
pMA-3.1.0-english diff, ereg() -> preg()
Moved to patches.
Merged, thanks for the good job!