2012-04-07 39 views
0

在执行以下操作后,我变得空白。使用preg_match()替换eregi()后得到空白页()

$patt="(BEGIN:|END:)[[:blank:]]*([0-9a-zA-Z\_]+)[[:blank:]]*-->(.*)"; 
if (eregi($patt,$v,$res)) 

工作正常,

现在我已经在上面的代码替换为以下

$patt="(BEGIN:|END:)[[:blank:]]*([0-9a-zA-Z\_]+)[[:blank:]]*-->(.*)"; 
    if (preg_match('#'.$patt.'#',$v,$res)) 

,现在我收到空白页。

有没有人有这方面的想法?

+0

HM,[eregi()](http://php.net/manual/en/function.eregi.php)是区分大小写的搜索,你可以做的第一件事就是加上'i'修饰符[preg_match()](http://www.php.net/manual/en/function.preg-match.php)像'#你的模式#我'。另请阅读PHP中的[POSIX和PCRE之间的差异](http://php.net/manual/en/reference.pcre.pattern.posix.php)文档(特别是[评论](http://www.php。 net/manual/en/reference.pcre.pattern.posix.php#106310)波纹管)。 – Wh1T3h4Ck5 2012-04-07 07:18:41

回答

2

eregi不区分大小写,所以您需要添加i

if (preg_match('#'.$patt.'#i',$v,$res)) 
+0

仍然会出现同样的问题 – mack 2012-04-07 09:06:52