字符过滤函数,过滤重复字符串
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了字符过滤函数,过滤重复字符串相关的知识,希望对你有一定的参考价值。
实际作用不大,有时会用到,留着作为以后参考。若有缘者看到,恳请提出优化方案
1 USE [master]
2 GO
3 /****** Object: UserDefinedFunction [dbo].[CharFilter] Script Date: 04/06/2016 17:20:16 ******/
4 SET ANSI_NULLS ON
5 GO
6 SET QUOTED_IDENTIFIER ON
7 GO
8 --=========================================================
9 --过滤字符串中重复字符 CharFilter @str 为输入字符串,
10 @sym 分隔符
11 --字符长度根据实际需求分配
12 --=========================================================
13 CREATE FUNCTION [dbo].[CharFilter](@str varchar(8000),@sym varchar(20))
14 RETURNS varchar(8000)
15 AS
16 BEGIN
17 declare @return varchar(8000), @ret varchar(8000)
18 select @str = @str+‘,‘
19 while charindex(@sym,@str) > 0
20 begin
21 select @ret = substring(@str,1,charindex(@sym,@str)-1)
22
23 select @return = isnull(@return+@sym,‘‘)+@ret
24
25 select @str = replace(@str,@ret+@sym,‘‘)
26 end
27 RETURN @return
2 GO
3 /****** Object: UserDefinedFunction [dbo].[CharFilter] Script Date: 04/06/2016 17:20:16 ******/
4 SET ANSI_NULLS ON
5 GO
6 SET QUOTED_IDENTIFIER ON
7 GO
8 --=========================================================
9 --过滤字符串中重复字符 CharFilter @str 为输入字符串,
10 @sym 分隔符
11 --字符长度根据实际需求分配
12 --=========================================================
13 CREATE FUNCTION [dbo].[CharFilter](@str varchar(8000),@sym varchar(20))
14 RETURNS varchar(8000)
15 AS
16 BEGIN
17 declare @return varchar(8000), @ret varchar(8000)
18 select @str = @str+‘,‘
19 while charindex(@sym,@str) > 0
20 begin
21 select @ret = substring(@str,1,charindex(@sym,@str)-1)
22
23 select @return = isnull(@return+@sym,‘‘)+@ret
24
25 select @str = replace(@str,@ret+@sym,‘‘)
26 end
27 RETURN @return
28 END
以上是关于字符过滤函数,过滤重复字符串的主要内容,如果未能解决你的问题,请参考以下文章