--====================================
--标题: 应用实例之SQL SERVER 正则替换
--作者:maco_wang
--时间:2012-03-24
--说明:MS-SQL SERVER 中的正则替换
--补充说明:支持一下优快云社区支持的活动
--====================================
/*
假设测试数据为:
col
----------------------
192abc168xx0yya101baaa
10hh176bag98job121zero
hello112u19aa110beyp45
a80abab230pppp120qu224
121nile21reply30vall90
想要得到的结果(把字段中的连续的字母替换成'.'):
col
--------------
192.168.0.101
10.176.98.121
112.19.110.45
80.230.120.224
121.21.30.90
*/
--测试数据:
if object_id('[tb]') is not null drop table [tb]
create table [tb] (col varchar(100))
insert into [tb]
select '192abc168xx0yya101baaa' union all
select '10hh176bag98job121zero' union all
select 'hello112u19aa110beyp45' union all
select 'a80abab230pppp120qu224' union all
select '121nile21reply30vall90'
--本示例在SQL SERVER 2005版本即可适用。
--正常思路
--a)游标循环截取(略)
--b)自定义函数
go
create function [dbo].[fn_replace]
(
@str nvarchar(100)
)
returns varchar(100)
as
begin
while patindex('%[a-z]%',@str) >
SQL SERVER 正则替换实例分享--【叶子】
最新推荐文章于 2023-02-01 19:04:25 发布
本文通过实例演示了在SQL SERVER中如何使用正则表达式进行字符串替换,特别是将连续字母替换为'.',并提供了自定义函数和正则替换函数的方法,展示了不同替换策略的实现和比较。

最低0.47元/天 解锁文章
7375

被折叠的 条评论
为什么被折叠?



