خب .توابع preg_match از قاعده درست و اصلی Regular Expression استفاده می کنه
ولی تابع eregi . یک مقداری خارج از این قاعده است
در ضمن جدا کننده های که در توابع preg است . این امکان رو به شما میده
که به راحتی از چندین تا flag استفاده کنید که ereg و eregi نداره مثلا
PHP:
ereg("[a-z0-9]",$Str,$out); // alais of
preg_match("/[a-z0-9]/",$Str,$out);
eregi("[a-z0-9]",$Str,$out); // alais of
preg_match("/[a-z0-9]/i",$Str,$out);
اگر به مثال بالا دقت کنید تابع preg کار هر دو تابع ereg و eregi رو انجام میده
توابع eregi و ereg در php 6 حذف شده . و در php 5.3 بد شناخته شده (یعنی ارور E_DEPRACTED میده )
از این 2 تابع استفاده نکنید
و به جای کلا توابع eregi,ereg,ereg_replace ...
از توابع Preg استفاده کنید