zoukankan      html  css  js  c++  java
  • 数据库字段的正则批量替换例子

    '123<和这个>56<7>8'替换为'123568'
    最直接的方法就是想到正则表达式
    如果是SQLServer则不直接支持,可以借助js的com组件

    --测试字符串

    declare @inStr varchar(800)

    set @inStr='123<和这个>56<7>8'

    --测试语句

    declare @str  varchar(800)

    set @str='var data = "'+@inStr+'";var reCat = /<[^>]+>/gi;data.replace(reCat,"");'

    declare @object int 

    declare @r varchar(800)

    exec sp_OACreate 'MSScriptControl.ScriptControl',@object output   

    exec sp_OASetProperty @object, 'Language','javascript' 

    exec sp_OAMethod @object, 'eval', @r out,@str 

    select @r

    --输出

    /*123568*/

     

    如果是Oracle则简单很多,可以直接用SQL语句

     

    Select REGEXP_REPLACE('123<和这个>56<7>8','<[^>]+>', '') as r FROM dual;
    /*
    R
    123568
    */


  • 相关阅读:
    Informix IDS 11零碎规画(918考试)认证指南,第 7 部分: IDS复制(15)
    Informix IDS 11琐屑管理(918考试)认证指南,第 7 局部: IDS复制(10)
    近期招聘
    Classes 单元下的公用函数目录
    Graphics 单元下的公用函数目录
    CnPack 使用的组件命名约定
    Windows 单元下的公用函数目录(RZ_)
    Variants 单元下的公用函数目录
    StrUtils 单元下的公用函数目录
    Math 单元下的公用函数目录
  • 原文地址:https://www.cnblogs.com/cl1024cl/p/6204863.html
Copyright © 2011-2022 走看看