0

我正在执行以下正则表达式

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

它给出了以下错误

Warning: preg_match() [function.preg-match]: Unknown modifier '['

它工作正常

if (eregi($patt,$v,$res))
4

2 回答 2

0

您需要添加正则表达式分隔符,例如:

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

于 2012-04-07T06:14:41.600 回答
0

preg_*函数族要求您将模式编写为/pattern/,其中/可以是任何其他“非字母数字、非反斜杠、非空白”字符,例如#pattern#!pattern!

http://us.php.net/manual/en/regexp.reference.delimiters.php

于 2012-04-07T06:14:51.423 回答