zoukankan      html  css  js  c++  java
  • Sqlserver 正则替换函数的一种实现

    --函数

    IF
    OBJECT_ID(N'dbo.RegexReplace') IS NOT NULL DROP FUNCTION dbo.RegexReplace GO CREATE FUNCTION dbo.RegexReplace ( @string VARCHAR(MAX), --被替换的字符串 @pattern VARCHAR(255), --替换模板 @replacestr VARCHAR(255), --替换后的字符串 @IgnoreCase INT = 0 --0区分大小写 1不区分大小写 ) RETURNS VARCHAR(8000) AS BEGIN DECLARE @objRegex INT, @retstr VARCHAR(8000) --创建对象 EXEC sp_OACreate 'VBScript.RegExp', @objRegex OUT --设置属性 EXEC sp_OASetProperty @objRegex, 'Pattern', @pattern EXEC sp_OASetProperty @objRegex, 'IgnoreCase', @IgnoreCase EXEC sp_OASetProperty @objRegex, 'Global', 1 --执行 EXEC sp_OAMethod @objRegex, 'Replace', @retstr OUT, @string, @replacestr --释放 EXECUTE sp_OADestroy @objRegex RETURN @retstr END GO

    用法示例(替换空格):

    --替换空格
    print dbo.RegexReplace('0   _ 276 _ 5', '\s+', '',1)
    
    --输出:0_276_5
    那一天我二十一岁,在我一生的黄金时代。
    我有好多奢望。我想爱,想吃,还想在一瞬间变成天上半明半暗的云。
    后来我才知道,生活就是个缓慢受锤的过程...
    可是我过二十一岁生日时没有预见到这一点。我觉得自己会永远生猛下去,什么也锤不了我。
    --《黄金时代》 王小波
    
  • 相关阅读:
    https://www.cnblogs.com/marost/p/4668664.html
    UEFI 坑 Ubuntu
    Spring《六》管理Bean
    Spring《五》集合的注入方式
    Spring《四-一》解决自动装配的问题
    spring《四》自动装配
    Spring《三》ref 引用其他bean
    Spring《二》 Bean的生命周期
    Spring《一》
    Fragment间相互调用并传值
  • 原文地址:https://www.cnblogs.com/pengxingsong/p/5912143.html
Copyright © 2011-2022 走看看