请php正则走开


Posted in PHP onMarch 15, 2008

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

       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 相关文章推荐
Blitz templates 最快的PHP模板引擎
Apr 06 PHP
php中使用exec,system等函数调用系统命令的方法(不建议使用,可导致安全问题)
Sep 07 PHP
php var_export与var_dump 输出的不同
Aug 09 PHP
php中url函数介绍及使用示例
Feb 13 PHP
PHP中4个加速、缓存扩展的区别和选用建议
Mar 12 PHP
Thinkphp中数据按分类嵌套循环实现方法
Oct 30 PHP
php设计模式之委托模式
Feb 13 PHP
PHP strip_tags() 去字符串中的 HTML、XML 以及 PHP 标签的函数
May 22 PHP
PHP实现的CURL非阻塞调用类
Jul 26 PHP
PHP 数组黑名单/白名单实例代码详解
Jun 04 PHP
Laravel 修改默认日志文件名称和位置的例子
Oct 17 PHP
php实现简易计算器
Aug 28 PHP
可以在线执行PHP代码包装修正版
Mar 15 #PHP
PHP Token(令牌)设计
Mar 15 #PHP
php项目打包方法
Feb 18 #PHP
PHP4与PHP5的时间格式问题
Feb 17 #PHP
PHP5 面向对象程序设计
Feb 13 #PHP
Dedecms常用函数解析
Feb 01 #PHP
用php实现批量查询清除一句话后门的代码
Jan 20 #PHP
You might like
php缓冲 output_buffering的使用详解
2013/06/13 PHP
PHP中把对象转换为关联数组代码分享
2015/04/09 PHP
在Thinkphp中使用ajax实现无刷新分页的方法
2016/10/25 PHP
Zend Framework数据库操作技巧总结
2017/02/18 PHP
Laravel框架实现的上传图片到七牛功能详解
2019/09/06 PHP
Prototype Array对象 学习
2009/07/19 Javascript
jQuery选择头像并实时显示的代码
2010/06/27 Javascript
IE6、IE7中setAttribute不支持class/for/rowspan/colspan等属性
2011/08/28 Javascript
Prototype源码浅析 String部分(三)之HTML字符串处理
2012/01/15 Javascript
一个可以增加和删除行的table并可编辑表格中内容
2014/06/16 Javascript
JS实现CheckBox复选框全选、不选或全不选功能
2020/07/28 Javascript
解决bootstrap导航栏navbar在IE8上存在缺陷的方法
2016/07/01 Javascript
AngularJS 2.0入门权威指南
2016/10/08 Javascript
完美解决UI-Grid表格元素中多个空格显示为一个空格的问题
2017/04/25 Javascript
JS实现仿饿了么在浏览器标签页失去焦点时网页Title改变
2017/06/01 Javascript
解决html input验证只能输入数字,不能输入其他的问题
2017/07/21 Javascript
vue使用rem实现 移动端屏幕适配
2018/09/26 Javascript
在VUE中使用lodash的debounce和throttle操作
2020/11/09 Javascript
使用Vant完成Dialog弹框案例
2020/11/11 Javascript
[50:48]LGD vs CHAOS 2019国际邀请赛小组赛 BO2 第二场 8.15
2019/08/16 DOTA
python del()函数用法
2013/03/24 Python
python多进程操作实例
2014/11/21 Python
Python常用小技巧总结
2015/06/01 Python
python实现年会抽奖程序
2019/01/22 Python
详解pandas的外部数据导入与常用方法
2019/05/01 Python
python 获取剪切板内容的两种方法
2020/11/28 Python
一款基于css3和jquery实现的动画显示弹出层按钮教程
2015/01/04 HTML / CSS
德国宠物用品、宠物食品及水族馆网上商店:ZooRoyal
2017/07/09 全球购物
Java的接口和C++的虚类的相同和不同处
2014/03/27 面试题
几个Linux面试题笔试题
2012/12/01 面试题
小学师德标兵先进事迹材料
2014/05/25 职场文书
2014年音乐教师工作总结
2014/12/03 职场文书
检举信的写法
2019/04/10 职场文书
2019员工保密协议书(3篇)
2019/09/23 职场文书
mysql连接查询中and与where的区别浅析
2021/07/01 MySQL
windows server2008 开启端口的实现方法
2022/06/25 Servers