declare @str varchar(100), @i int set @str='sd深3刻的g飞45机dsf扩大' set @i=1 while @i<=len(@str) begin if len(unicode(substring(@str,@i,1)))<5 begin set @str=stuff(@str,@i,1,''); print @str end else set @i=@i+1; end select @str
create function get_china(@s varchar(50)) returns varchar(50) as begin declare @i int set @i=1 while patindex('%[^吖-咗]%',@s) > 0 and @i<=len(@s) begin if substring(@s,@i,1) not like '%[吖-咗]%' set @s=stuff(@s,@i,1,'') else set @i=@i+1 end return @s endselect dbo.get_china('哈ab你好cd呵呵,,哈')
create function get_china(@s varchar(50)) returns varchar(50) as begin declare @i int set @i=1 while patindex('%[^吖-咗]%',@s) > 0 and @i <=len(@s) begin if substring(@s,@i,1) not like '%[吖-咗]%' set @s=stuff(@s,@i,1,'') else set @i=@i+1 end return @s end select dbo.get_china('哈ab你好cd呵呵,,哈')
create function getnewstr (@oldstr varchar(100)) returns varchar(100) as begin declare @i int set @i = 1 while @i <= len(@oldstr) if substring(@oldstr, @i, 1) like('[^吖-座]') set @oldstr = replace(@oldstr, substring(@oldstr, @i, 1), '') else set @i = @i +1 return @oldstr end goselect result = dbo.getnewstr('11adfasd1中国aadfaa') select result = dbo.getnewstr('11adsf1中国aaadfadsa广东eodsa深adfa圳')drop function dbo.getnewstr
declare
@str varchar(100),
@i int
set @str='sd深3刻的g飞45机dsf扩大'
set @i=1
while @i<=len(@str)
begin
if len(unicode(substring(@str,@i,1)))<5
begin
set @str=stuff(@str,@i,1,'');
print @str
end
else
set @i=@i+1;
end
select @str
returns varchar(50)
as
begin
declare @i int
set @i=1
while patindex('%[^吖-咗]%',@s) > 0 and @i<=len(@s)
begin
if substring(@s,@i,1) not like '%[吖-咗]%'
set @s=stuff(@s,@i,1,'')
else
set @i=@i+1
end
return @s
endselect dbo.get_china('哈ab你好cd呵呵,,哈')
returns varchar(50)
as
begin
declare @i int
set @i=1
while patindex('%[^吖-咗]%',@s) > 0 and @i <=len(@s)
begin
if substring(@s,@i,1) not like '%[吖-咗]%'
set @s=stuff(@s,@i,1,'')
else
set @i=@i+1
end
return @s
end select dbo.get_china('哈ab你好cd呵呵,,哈')
(@oldstr varchar(100))
returns varchar(100)
as
begin
declare @i int
set @i = 1
while @i <= len(@oldstr)
if substring(@oldstr, @i, 1) like('[^吖-座]')
set @oldstr = replace(@oldstr, substring(@oldstr, @i, 1), '')
else
set @i = @i +1
return @oldstr
end
goselect result = dbo.getnewstr('11adfasd1中国aadfaa')
select result = dbo.getnewstr('11adsf1中国aaadfadsa广东eodsa深adfa圳')drop function dbo.getnewstr
总结了几个函数,晒晒~
http://topic.csdn.net/u/20080713/00/77925c47-b7fa-4c1b-b307-0328e74a1c09.html?seed=1165773024