请php正则走开

  好了,那么我出几个题,不用正则,看我怎么解决的。

  1.清除HTML中所有的标签,只保留超级链接。

  我用strip_tags。

  strip_tags($data,$tags)

  $data为字符串,$tags为保留的标签。

  strip_tags($data,'<a>')即可。完了?对,就那么简单。

  如果我还想保留<img>,则strip_tags($data,'<a><img>')

  2.截取$str中从$str1到$str2中间的字符串的第一个匹配。

  function str_cut($str ,$start, $end) {//取出第一个匹配,效率最高

  $content = strstr( $str, $start );

  $content = substr( $content, strlen( $start ), strpos( $content, $end ) - strlen( $start ) );

  return $content;

  }

  3.截取$str中从$str1到$str2中间的字符串的所有匹配。

  function my_Ca($content,$start,$end){//取出所有匹配,不包含开始和结束字符串

  $m = explode($start,$content);

  $a = array();

  $sum = count($m);

  for( $i = 1;$i < $sum;$i++ )

  {

  $my = explode($end,$m[$i]);

  $a[] = $my[0];

  unset($my);

  }

  return $a;

  }

  总结:你只要多想多总结,不用正则,用PHP自带的函数你能够解决大部分问题。