请php正则走开

5年以前  |  阅读数:1101 次  |  编程语言: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自带的函数你能够解决大部分问题。

 相关文章:
PHP分页显示制作详细讲解
SSH 登录失败:Host key verification failed
获取IMSI
将二进制数据转为16进制以便显示
获取IMEI
文件下载
贪吃蛇
双位运算符
PHP自定义函数获取搜索引擎来源关键字的方法
Java生成UUID
发送邮件
年的日历图
提取后缀名
在Zeus Web Server中安装PHP语言支持
让你成为最历害的git提交人
Yii2汉字转拼音类的实例代码
再谈PHP中单双引号的区别详解
指定应用ID以获取对应的应用名称
Python 2与Python 3版本和编码的对比
php封装的page分页类完整实例