151-3895-5886

mysql去除html标签的函数代码

2019-01-07 浏览:

mysql本身没有去除html代码的内置函数,但是在一些情况下,不得不在数据库层次提取一些去除了html代码的纯文本。

经过谷歌后,找到了以下两个函数,经测试,均可用。

函数1:

SQL代码

SET GLOBAL log_bin_trust_function_creators=1;   

DROP FUNCTION IF EXISTS fnStripTags;   

DELIMITER |   

CREATE FUNCTION fnStripTags( Dirty varchar(4000) )   

RETURNS varchar(4000)   

DETERMINISTIC    

BEGIN  

  DECLARE iStart, iEnd, iLength int;   

    WHILE Locate( '<', Dirty ) > 0 And Locate( '>', Dirty, Locate( '<', Dirty )) > 0 DO   

      BEGIN  

        SET iStart = Locate( '<', Dirty ), iEnd = Locate( '>', Dirty, Locate('<', Dirty ));   

        SET iLength = ( iEnd - iStart) + 1;   

        IF iLength > 0 THEN  

          BEGIN  

            SET Dirty = Insert( Dirty, iStart, iLength, '');   

          END;   

        END IF;   

      END;   

    END WHILE;   

    RETURN Dirty;   

END;   

|   

DELIMITER ;   

SELECT fnStripTags('this <html>is <b>a test</b>, nothing more</html>');  

函数2:

SQL代码

CREATE FUNCTION `strip_tags`($str text) RETURNS text   

BEGIN  

    DECLARE $start, $end INT DEFAULT 1;   

    LOOP   

        SET $start = LOCATE("<", $str, $start);   

        IF (!$start) THEN RETURN $str; END IF;   

        SET $end = LOCATE(">", $str, $start);   

        IF (!$end) THEN SET $end = $start; END IF;   

        SET $str = INSERT($str, $start, $end - $start + 1, "");   

    END LOOP;   

END;   

  select strip_tags('<span>hel<b>lo <a href="world">wo<>rld</a> <<x>again<.');  

郑州融科网络专注于企业网站建设、网站制作、高端网站设计,郑州荥阳、上街做网站就找融科网络!
本文章网址:/code/1671.html。转载请保留出处,谢谢合作!
文章标签: 标签 代码 SQL 函数 MYSQL 文本
阅读下一篇
SQL 数据库增删改查基本语句
推荐阅读
网站建设中网页设计规划的方法
企业网站要注重长尾关键词带来的
新站制作网站需要注意哪些问题?
织梦tag标签过长被截断的处理方法
怎么打造有利于SEO的动态URL地址?
做一个营销型网站建设的重要性
常用的一些灰帽SEO技巧
织梦Dedecms添加广告不能正常显示
如何才能提高你关键词库中的排名
网站排名不稳定到底是什么原因?
郑州网站建设融科网络微信二维码
准备开展业务?
郑州建站咨询服务
联系专业的商务顾问,诊查网站现状及关键词、分析竞争对手的流量、一对一咨询、及其报价详情