preg_match_all()[function.preg-match-all]:未知修饰符']'

时间:2008-12-28 19:26:19

标签: php regex pcre

使用一些不同的模式,但每个模式都会出现这个错误 - 所以出了什么问题?

我诊断的最短的一个是:

$pattern = "<img([^>]*[^/])>";
preg_match_all($pattern, $subject, $matches);

由于

2 个答案:

答案 0 :(得分:11)

您缺少正则表达式分隔符。尝试:

$pattern = "#<img([^>]*[^/])>#i";

答案 1 :(得分:9)

单个斜杠是默认分隔符,这就是为什么原始正则表达式中的字符在错误消息中的原因。 使用传统斜杠作为分隔符并转义不是分隔符的斜杠将如下所示:

$pattern = "/<img([^>]*[^\\/])>/";