什么" $ str = preg_replace(' /< [^>] +> / i','',$ str)"意思?

时间:2014-04-16 07:33:11

标签: php

function erase_tag($str){

    $str = preg_replace('/<[^>]+>/i'," ",$str);
    $str = preg_replace("/\s\s/"," ",$str);
    return $str;

}

1 个答案:

答案 0 :(得分:4)

preg_replace使用正则表达式:

/<[^>]+>/i

Regular expression visualization

  • < - 文字<
  • [^>]+ - 任何不符合的字符(^>匹配1到无穷大时间(即+
  • > - 文字>

它用空格替换HTML标记(或<....>内的任何其他内容)。 i是一个“区分大小写”修饰符,并且在此正则表达式中没有任何意义,因为我们不使用任何字母。另一种方法是构建strip_tags()函数。


/\s\s/

Regular expression visualization

  • \s - 一个空白字符
  • \s - 一个空白字符

它用一个空格替换彼此之后的两个空格(制表符,换行符,空格)。就个人而言,我更喜欢{1}}匹配1与无限量的白色空格相互匹配。