佳木斯湛栽影视文化发展公司

主頁 > 知識(shí)庫 > SQL Server中利用正則表達(dá)式替換字符串的方法

SQL Server中利用正則表達(dá)式替換字符串的方法

熱門標(biāo)簽:鐵路電話系統(tǒng) Linux服務(wù)器 AI電銷 呼叫中心市場需求 百度競價(jià)排名 網(wǎng)站排名優(yōu)化 地方門戶網(wǎng)站 服務(wù)外包

建立正則替換函數(shù),利用了OLE對(duì)象,以下是函數(shù)代碼:

--如果存在則刪除原有函數(shù) 
IF OBJECT_ID(N'dbo.RegexReplace') IS NOT NULL 
 DROP FUNCTION dbo.RegexReplace 
GO 
--開始創(chuàng)建正則替換函數(shù) 
 CREATE FUNCTION dbo.RegexReplace 
( 
 @string VARCHAR(MAX), --被替換的字符串 
 @pattern VARCHAR(255), --替換模板 
 @replacestr VARCHAR(255), --替換后的字符串 
 @IgnoreCase INT = 0 --0區(qū)分大小寫 1不區(qū)分大小寫 
) 
RETURNS VARCHAR(8000) 
AS 
BEGIN 
 DECLARE @objRegex INT, @retstr VARCHAR(8000) 
 --創(chuàng)建對(duì)象 
 EXEC sp_OACreate 'VBScript.RegExp', @objRegex OUT 
 --設(shè)置屬性 
 EXEC sp_OASetProperty @objRegex, 'Pattern', @pattern 
 EXEC sp_OASetProperty @objRegex, 'IgnoreCase', @IgnoreCase 
 EXEC sp_OASetProperty @objRegex, 'Global', 1 
 --執(zhí)行 
 EXEC sp_OAMethod @objRegex, 'Replace', @retstr OUT, @string, @replacestr 
 --釋放 
 EXECUTE sp_OADestroy @objRegex 
 RETURN @retstr 
END 
GO 
--保證正常運(yùn)行的話,需要將Ole Automation Procedures選項(xiàng)置為1 
EXEC sp_configure 'show advanced options', 1 
RECONFIGURE WITH OVERRIDE 
EXEC sp_configure 'Ole Automation Procedures', 1 
RECONFIGURE WITH OVERRIDE 
--2.將姓名倒過來 
SELECT dbo.RegexReplace('John Smith', '([a-z]+)\s([a-z]+)', '$2,$1',1) 
/* 
-------------------------------------- 
Smith,John 
*/ 
--------------------------------------------------

只有對(duì)寫程序充滿熱情,才能寫出好的程序!

以上所述是小編給大家介紹的SQL Server中利用正則表達(dá)式替換字符串的方法,希望對(duì)大家有所幫助,如果大家有任何疑問歡迎給我留言小編會(huì)及時(shí)回復(fù)大家的!

您可能感興趣的文章:
  • mysql 正則表達(dá)式查詢含有非數(shù)字和字符的記錄
  • MySQL 字符串模式匹配 擴(kuò)展正則表達(dá)式模式匹配
  • SqlServer類似正則表達(dá)式的字符處理問題

標(biāo)簽:蘭州 湖南 仙桃 崇左 衡水 湘潭 銅川 黃山

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《SQL Server中利用正則表達(dá)式替換字符串的方法》,本文關(guān)鍵詞  ;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 收縮
    • 微信客服
    • 微信二維碼
    • 電話咨詢

    • 400-1100-266
    石狮市| 武山县| 石首市| 安顺市| 芦山县| 南通市| 尚志市| 教育| 思茅市| 滕州市| 墨脱县| 桓台县| 兰州市| 大余县| 延安市| 庄浪县| 兴化市| 砚山县| 灵寿县| 双鸭山市| 宣恩县| 晋宁县| 鲁甸县| 博湖县| 清河县| 库尔勒市| 博客| 达日县| 岑溪市| 鸡西市| 江源县| 建瓯市| 凤城市| 田阳县| 新源县| 九江县| 呼图壁县| 诸暨市| 上蔡县| 锦屏县| 瑞丽市|