警告:preg_match_all():使用php的未知修饰符'J'

时间:2013-11-21 14:06:20

标签: php regex

我在php中使用正则表达式,工作正常。但是,得到一些警告,如

Warning: preg_match_all(): Unknown modifier 'J'

我的代码是

$pattern = '/\b'.trim($keyword[$i]).'(s)??\b/i';
                    if(preg_match_all($pattern, substr($content,10), $matches)){
                        print_r($matches[0]);
                    }

print_r($keywords[$i])的结果是

Array
(
    [0] => best
    [1] =>  menu
    [2] =>  resturant
    [3] =>  resturants
    [4] =>  Food
    [5] =>  Dinner
    [6] =>  Lunch
)

供您参考。

请帮助我。提前谢谢!

1 个答案:

答案 0 :(得分:7)

当您将这样的单词插入正则表达式时,最好使用preg_quote()

$pattern = '/\b'.preg_quote(trim($keyword[$i]), '/').'(s)??\b/i';