SQL Server正则表达式 替换函数应用详解
来源:asp之家 时间:2023-07-07 23:53:13
--SQL正则替换函数
代码如下:
CREATE function dbo.regexReplace
(
@source ntext, --原字符串
@regexp varchar(1000), --正则表达式
@replace varchar(1000), --替换值
@globalReplace bit = 1, --是否是全局替换
@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
/*
配置对扩展存储过程的支持
Microsoft SQL Server 2005 -> 配置工具 -> 外围应用配置器 -> 功能的外围应用配置 -> Ole自动化:支持Ole自动化
使用举例1:
代码如下:
declare @source nvarchar(4000)
set @source = 'dsafsdf'
select dbo.regexReplace(@source, '\<[^\>]+\>', '', 1, 1)
使用举例2: (将数据库字段中含有<font color='#ff0000'>aaa</font>替换为<font>aaa</font>)
Select id,dbo.regexReplace(字段,'<font([^>])*>','<font>',1,0) AS 别名 From 表
*/
![](/images/zang.png)
![](/images/jiucuo.png)
猜你喜欢
在python中logger setlevel没有生效的解决
![](https://img.aspxhome.com/file/2023/7/135377_0s.jpg)
简单介绍Python中的round()方法
MySQL 8.0 之不可见列的基本操作
MySQL数据库表中的约束详解
Python中的if判断语句中包含or问题
![](https://img.aspxhome.com/file/2023/9/110219_0s.png)
一个提高了近10%转化率的改进
![](https://img.aspxhome.com/file/UploadPic/20095/22/sampa-400x582-52s.gif)
Go语言操作MySQL的知识总结
搜索结果页(SERP):个性化如何影响用户行为?
![](https://img.aspxhome.com/file/UploadPic/20097/22/12344d4b41cg214-19s.jpg)
为什么Vue3.0使用Proxy实现数据监听(defineProperty表示不背这个锅)
![](https://img.aspxhome.com/file/2023/3/126573_0s.png)
asp.net中文件下载功能的实例代码
php修改NetBeans默认字体的大小
SQL中JOIN和UNION区别、用法及示例介绍
通过js脚本复制网页上的一个表格的不错实现方法
如何用ASP获知机器的网络配置?
Python 实现opencv所使用的图片格式与 base64 转换
vue动态设置页面title的方法实例
python selenium参数详解和实现案例
![](https://img.aspxhome.com/file/2023/1/62881_0s.png)