zoukankan      html  css  js  c++  java
  • sqlServer 中 正则表达式的使用(regexReplace函数)及配置(转)

    先创建自定义函数
    -----------------------------------------------
    create function dbo.regexReplace
    (
    @source varchar(5000), --原字符串
    @regexp varchar(1000), --正则表达式
    @replace varchar(1000), --替换值
    @globalReplace bit = 0, --是否是全局替换
    @ignoreCase bit = 0 --是否忽略大小写
    )
    returnS varchar(1000) AS
    begin
    declare @hr integer
    declare @objRegExp integer
    declare @result varchar(5000)

    exec @hr = sp_OACreate 'VBScript.RegExp', @objRegExp OUTPUT
    IF @hr <> 0 begin
    exec @hr = sp_OADestroy @objRegExp
    return null
    end
    exec @hr = sp_OASetProperty @objRegExp, 'Pattern', @regexp
    IF @hr <> 0 begin
    exec @hr = sp_OADestroy @objRegExp
    return null
    end
    exec @hr = sp_OASetProperty @objRegExp, 'Global', @globalReplace
    IF @hr <> 0 begin
    exec @hr = sp_OADestroy @objRegExp
    return null
    end
    exec @hr = sp_OASetProperty @objRegExp, 'IgnoreCase', @ignoreCase
    IF @hr <> 0 begin
    exec @hr = sp_OADestroy @objRegExp
    return null
    end
    exec @hr = sp_OAMethod @objRegExp, 'Replace', @result OUTPUT, @source, @replace
    IF @hr <> 0 begin
    exec @hr = sp_OADestroy @objRegExp
    return null
    end
    exec @hr = sp_OADestroy @objRegExp
    IF @hr <> 0 begin
    return null
    end

    return @result
    end
    GO

    -------------------------------------
    配置对扩展存储过程的支持
    Microsoft SQL Server 2005 -> 配置工具 -> 外围应用配置器 -> 功能的外围应用配置 -> Ole自动化:支持Ole自动化

    使用方法:
    declare @source nvarchar(4000)
    set @source = '<HTML>dsafsdf<HEAD>'
    select dbo.regexReplace(@source, '\<[^\>]+\>', '', 1, 1)

  • 相关阅读:
    列表解析、字典解析、集合解析、生成器解析
    匿名函数lambda
    一、软件开发的常识
    Vocabulary Recitation 2020/04/26
    Vocabulary Recitation 2020/04/25
    Vocabulary Recitation 2020/04/24
    数据结构_郝斌_五种常用排序概述
    Vocabulary Recitation 2020/04/23
    Vocabulary Recitation 2020/04/22
    数据结构_郝斌_树与图
  • 原文地址:https://www.cnblogs.com/liubaolongcool/p/2286310.html
Copyright © 2011-2022 走看看