SQL Server中利用正则表达式替换字符串的方法

发布时间 - 2026-01-10 23:26:56    点击率:

建立正则替换函数,利用了OLE对象,以下是函数代码:

--如果存在则删除原有函数 
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 
--保证正常运行的话,需要将Ole Automation Procedures选项置为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 
*/ 
--------------------------------------------------

只有对写程序充满热情,才能写出好的程序!

以上所述是小编给大家介绍的SQL Server中利用正则表达式替换字符串的方法,希望对大家有所帮助,如果大家有任何疑问欢迎给我留言小编会及时回复大家的!


# sql  # server替换字符串  # 正则表达式替换字符串  # MySQL 字符串模式匹配 扩展正则表达式模式匹配  # mysql 字符串正则表达式及说明  # SQL中的字符串正则表达式常见示例代码  # 小编  # 给大家  # 所述  # 给我留言  # 正常运行  # 倒过来  # 有任何  # 正则表达式  # replacestr  # IgnoreCase  # MAX  # pattern  # INT  # objRegex  # retstr  # EXEC  # RETURNS  # DECLARE  # VARCHAR  # brush 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: 百度浏览器ai对话怎么关 百度浏览器ai聊天窗口隐藏  如何在万网主机上快速搭建网站?  5种Android数据存储方式汇总  为什么要用作用域操作符_php中访问类常量与静态属性的优势【解答】  如何用AI帮你把自己的生活经历写成一个有趣的故事?  进行网站优化必须要坚持的四大原则  1688铺货到淘宝怎么操作 1688一键铺货到自己店铺详细步骤  深圳网站制作的公司有哪些,dido官方网站?  国美网站制作流程,国美电器蒸汽鍋怎么用官方网站?  如何在景安云服务器上绑定域名并配置虚拟主机?  Laravel的辅助函数有哪些_Laravel常用Helpers函数提高开发效率  高配服务器限时抢购:企业级配置与回收服务一站式优惠方案  Laravel与Inertia.js怎么结合_使用Laravel和Inertia构建现代单页应用  如何实现javascript表单验证_正则表达式有哪些实用技巧  Android 常见的图片加载框架详细介绍  实例解析Array和String方法  米侠浏览器网页图片不显示怎么办 米侠图片加载修复  Laravel怎么实现微信登录_Laravel Socialite第三方登录集成  Laravel Sail是什么_基于Docker的Laravel本地开发环境Sail入门  如何在新浪SAE免费搭建个人博客?  Laravel怎么实现搜索高亮功能_Laravel结合Scout与Algolia全文检索【实战】  Laravel怎么自定义错误页面_Laravel修改404和500页面模板  免费制作统计图的网站有哪些,如何看待现如今年轻人买房难的情况?  Laravel如何升级到最新的版本_Laravel版本升级流程与兼容性处理  电视网站制作tvbox接口,云海电视怎样自定义添加电视源?  php读取心率传感器数据怎么弄_php获取max30100的心率值【指南】  Linux后台任务运行方法_nohup与&使用技巧【技巧】  javascript中数组(Array)对象和字符串(String)对象的常用方法总结  手机网站制作与建设方案,手机网站如何建设?  Windows Hello人脸识别突然无法使用  免费网站制作appp,免费制作app哪个平台好?  Laravel如何实现用户角色和权限系统_Laravel角色权限管理机制  关于BootStrap modal 在IOS9中不能弹出的解决方法(IOS 9 bootstrap modal ios 9 noticework)  laravel怎么实现图片的压缩和裁剪_laravel图片压缩与裁剪方法  zabbix利用python脚本发送报警邮件的方法  百度浏览器网页无法复制文字怎么办 百度浏览器复制修复  如何在阿里云域名上完成建站全流程?  使用PHP下载CSS文件中的所有图片【几行代码即可实现】  如何在IIS管理器中快速创建并配置网站?  Laravel怎么生成二维码图片_Laravel集成Simple-QrCode扩展包与参数设置【实战】  如何在香港免费服务器上快速搭建网站?  PHP 实现电台节目表的智能时间匹配与今日/明日轮播逻辑  矢量图网站制作软件,用千图网的一张矢量图做公司app首页,该网站并未说明版权等问题,这样做算不算侵权?应该如何解决?  Laravel如何生成API文档?(Swagger/OpenAPI教程)  Chrome浏览器标签页分组怎么用_谷歌浏览器整理标签页技巧【效率】  UC浏览器如何设置启动页 UC浏览器启动页设置方法  广州网站制作公司哪家好一点,广州欧莱雅百库网络科技有限公司官网?  高性能网站服务器配置指南:安全稳定与高效建站核心方案  如何在云主机快速搭建网站站点?  JS去除重复并统计数量的实现方法