去掉参数内HTML代码的SQL函数


  本文标签:SQL 函数 HTML

  下面为您介绍的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, ,), ,), ,)