文档章节

在SQL中用正则表达式替换html标签

深圳大道
 深圳大道
发布于 2016/12/29 15:40
字数 376
阅读 108
收藏 0
create function [dbo].[clearhtml] (@maco varchar(8000))
returns varchar(8000)
as
begin
    declare @randchar_one nvarchar(200)
    declare @randchar_two nvarchar(200)
       if(charindex('<<',@maco)>0)
              begin
                     set @randchar_one='D4678B36-B958-4274-B81E-BBA636CFB427';
                     set @randchar_two='49E374CC-9E1A-4850-897C-27074DE32E7F';
                     set @maco=replace(@maco,'<<',@randchar_one)
                     set @maco=replace(@maco,'>>',@randchar_two)
              end
    declare @i int
    while 1 = 1
    begin
       set @i=len(@maco)
       set @maco=replace(@maco, substring(@maco,charindex('<',@maco),
       charindex('>',@maco)-charindex('<',@maco)+1),space(0))
       if @i=len( @maco )
       break
    end
 
    set @maco=replace(@maco,' ','')
    set @maco=replace(@maco,' ','')
    set @maco=ltrim(rtrim(@maco))
    set @maco=replace(@maco,char(9),'')
    set @maco=replace(@maco,char(10),'')
    set @maco=replace(@maco,char(13),'')
    if(charindex(@randchar_one,@maco)>0)
    begin
       set @maco=replace(@maco,'D4678B36-B958-4274-B81E-BBA636CFB427','<<')
       set @maco=replace(@maco,'49E374CC-9E1A-4850-897C-27074DE32E7F','>>')
    end
    return (@maco)
end
declare @mark varchar(8000)
set @mark='<body><div id=u><a href=http://passport.baidu.com/?login&tpl=mn>登录</a></div><center><img src=http://www.baidu.com/img/baidu_logo.gif width=270 height=129 usemap="#mp" id=lg><br><br><br><br><table cellpadding=0 cellspacing=0 id=l><tr><td><div id=m><a onclick=s(this) href=http://news.baidu.com>新 闻</a><b>网 页</b><a onclick=s(this) href=http://tieba.baidu.com>贴 吧</a><a onclick=s(this) href=http://zhidao.baidu.com>知 道</a><a onclick=s(this) href=http://mp3.baidu.com>MP3</a><a onclick=s(this) href=http://image.baidu.com>图 片</a><a onclick=s(this) href=http://video.baidu.com>视 频</a></div></td></tr></table>
<table cellpadding=0 cellspacing=0 style="margin-left:15px"><tr valign=top><td style="height:62px;padding-left:92px" nowrap><div style="position:relative"><form name=f action=/s><input type=text name=wd id=kw size=42 maxlength=100> <input type=submit value=百度一下id=sb><div id=sug onselectstart="return false"></div><span id=hp><a href=/search/jiqiao.html>帮助</a><br><a href=/gaoji/advanced.html>高级</a></span></form></div></td></tr></table>
</body>'
select dbo.clearhtml(@mark)
--result
--登录新闻网页贴吧知道MP3图片视频帮助高级

本文转载自:http://blog.csdn.net/smartsmile2012/article/details/39990257

深圳大道
粉丝 3
博文 877
码字总数 0
作品 0
深圳
架构师
私信 提问
正则表达式,替换所有HTML标签的简单实

下面小编就为大家带来一篇正则表达式,替换所有HTML标签的简单实例。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧 我自己写了一个正则表达式,<(. \n)+?> ...

码农般的学良
2016/11/28
168
0
正则表达式re.sub替换不完整的问题现象及其根本原因

问题描述 问题的起因来自于一段正则替换。为了从一段HTML代码里面提取出正文,去掉所有的HTML标签和属性,可以写一个Python函数: 这段代码的使用了正则表达式的替换功能。这个函数的第一个参...

青南
2018/08/28
0
0
15个实用的PHP正则表达式

对于开发人员来说,正则表达式是一个非常有用的功能,它提供了 查找,匹配,替换 句子,单词,或者其他格式的字符串。这篇文章主要介绍了15个超实用的php正则表达式,需要的朋友可以参考下。...

bo-少
2016/06/12
47
0
使用Dreamweaver正则表达式替换href中的内容

在Dreamweaver中使用正则表达式替换href中的内容,就像下面这些href中的内容复杂多样的情况下,href="/html/u.html",href="/tuho/huko.html",想将它们全部替换成href="#" ,具体做法如下:......

lixiaokai2008
2013/08/11
123
0
ES学习记录10.3——ES分析器4(字符过滤器)

字符过滤器(Character filters)用于在将字符流传递给标记生成器Tokenizer之前对其进行预处理,它负责将最原始的文本作为字符流进行接受,可以对通过添加、移除或改变字符的方式改变流。比如一...

浮躁的码农
03/05
33
0

没有更多内容

加载失败,请刷新页面

加载更多

PostgreSQL 11.3 locking

rudi
今天
5
0
Mybatis Plus sql注入器

一、继承AbstractMethod /** * @author beth * @data 2019-10-23 20:39 */public class DeleteAllMethod extends AbstractMethod { @Override public MappedStatement injectMap......

一个yuanbeth
今天
10
1
一次写shell脚本的经历记录——特殊字符惹的祸

本文首发于微信公众号“我的小碗汤”,扫码文末二维码即可关注,欢迎一起交流! redis在容器化的过程中,涉及到纵向扩pod实例cpu、内存以及redis实例的maxmemory值,statefulset管理的pod需要...

码农实战
今天
4
0
为什么阿里巴巴Java开发手册中不建议在循环体中使用+进行字符串拼接?

之前在阅读《阿里巴巴Java开发手册》时,发现有一条是关于循环体中字符串拼接的建议,具体内容如下: 那么我们首先来用例子来看看在循环体中用 + 或者用 StringBuilder 进行字符串拼接的效率...

武培轩
今天
8
0
队列-链式(c/c++实现)

队列是在线性表功能稍作修改形成的,在生活中排队是不能插队的吧,先排队先得到对待,慢来得排在最后面,这样来就形成了”先进先出“的队列。作用就是通过伟大的程序员来实现算法解决现实生活...

白客C
今天
81
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部