去掉參數內HTML代碼的SQL函數
下面為您介紹的SQL函數用于去掉參數內HTML代碼,需要給數據庫訪問者master.sp_OA系列存儲過程的EXEC權限,該方法供您參考,希望對您學習SQL函數的使用能夠有所幫助。
函數名稱:ReplaceHTML
參數:@Textstr
作用:去掉 @Textstr 內的HTML代碼
備注:需要給數據庫訪問者master.sp_OA系列存儲過程的EXEC權限
請先用Convert函數保證@Textstr為varchar(5000)而不是ntext
Create FUNCTION [dbo].[ReplaceHTML] (
@Textstr varchar (5000)
)
RETURNS varchar(5000) AS
BEGIN
DECLARE @hr integer
DECLARE @objRegExp integer
DECLARE @sStr varchar(5000)
DECLARE @re integer
DECLARE @results varchar(5000)
EXEC @hr = sp_OACreate 'VBScript.RegExp', @objRegExp OUTPUT
IF @hr <> 0 BEGIN
RETURN '不能創建VBScript.RegExp對象'
END
EXEC @hr = sp_OASetProperty @objRegExp, 'Pattern', '<(.[^>]*)>'
IF @hr <> 0 BEGIN
RETURN 'Pattern對象錯誤'
END
EXEC @hr = sp_OASetProperty @objRegExp, 'Global', True
IF @hr <> 0 BEGIN
RETURN 'Global對象錯誤'
END
EXEC @hr = sp_OASetProperty @objRegExp, 'IgnoreCase', True
IF @hr <> 0 BEGIN
RETURN 'IgnoreCase對象錯誤'
END
EXEC @hr = sp_OAMethod @objRegExp, 'Replace', @results OUTPUT, @Textstr,''
IF @hr <> 0 BEGIN
RETURN @Textstr
END
EXEC @hr = sp_OADestroy @objRegExp
IF @hr <> 0 BEGIN
RETURN '不能注銷VBScript.RegExp對象'
END
-- Set @results = Replace(Replace(Replace(@results,' ',''),' ',''),' ','')
-- RETURN @results
RETURN Replace(Replace(Replace(@results,' ',''),' ',''),' ','')
【編輯推薦】