preg_match_all来查找可能包含一些html标签的字符串?

时间:2016-05-03 08:58:15

标签: php regex preg-replace preg-match

我的博客文章有一个功能,访问者可以选择其中的一部分并留下反馈。反馈的主题是选择:它可以是几个单词,或者包含一些html标签的短语(不一定在它周围。)

我的功能,到现在为止如下:

function enco_str_replace_nth( $search, $replace, $subject, $nth = 0 ) {

    $found = preg_match_all( '/' . preg_quote( $search ) . '/', $subject, $matches, PREG_OFFSET_CAPTURE );

    if (false !== $found && $found > $nth) {
        return substr_replace( $subject, $replace, $matches[0][$nth][1], strlen( $search ) );
    }

    return $subject;
}

当没有HTML标记时,它会起作用。

a completely organic product

但是显示警告:preg_match_all():未知修饰符,并且当其中包含HTML时不起作用。

MSM is a  <strong>natural nutrient</strong>

because <em>it matters</em> to all of us

知道我应该在这个preg_match_all中改变什么吗?

1 个答案:

答案 0 :(得分:0)

除了我的评论:

 $(document).on('click.bs.collapse.data-api', '[data-toggle="collapse"]', function (e){
 ...
 })