我试图找到正确的正则表达式转换eregi($1,$2)
到preg_match("/$1/i",$2)
正则表达式:从eregi转换PHP代码的preg_match
我需要考虑是否有将在其与功能(),并且它们可能会出现多一次。 任何人都可以提供适当的正则表达式来做到这一点吗?
谢谢
我试图找到正确的正则表达式转换eregi($1,$2)
到preg_match("/$1/i",$2)
正则表达式:从eregi转换PHP代码的preg_match
我需要考虑是否有将在其与功能(),并且它们可能会出现多一次。 任何人都可以提供适当的正则表达式来做到这一点吗?
谢谢
您是否试图修改源代码,因为eregi
是deprecated?这个正则表达式将做的伎俩:
$source= <<<STR
eregi(\$1, \$2);
eregi('hello', 'world');
STR;
$source2= preg_replace("/eregi\(['\"]*([^\'\"),]+)['\"]*,\s*['\"]*([^'\"),]+)['\"]*\)/", 'preg_match("/$1/i", "$2")', $source);
var_dump($source2);
不幸的是,这个正则表达式不适用于下面这行代码: 'if(!eregi('Windows 9',php_uname())){' – ufk 2009-12-19 03:36:20
我怀疑我们真的可以帮助很多,而不先看到一些例子。从听起来像,解析器更适合这个任务,但也许你有你想用正则表达式做这件事的理由。但是,我怀疑它不幸是一个简单的插入式替换。 – Dustin 2009-12-18 20:20:40