sqlserver去掉字符串结尾的全角空格并用半角替换

  • Post author:
  • Post category:其他


CREATE FUNCTION [dbo].[FDT_DELETE_ZK_SPACE](

@str nvarchar(4000)

) returns nvarchar(4000)

as

begin

declare @endp int,@endflag int,@length int,@i int,@j int, @appstr nvarchar(4000)

,@reversestr nvarchar(4000),@return_str nvarchar(4000)

select @endflag = 0,@length=len(@str),@i=1,@reversestr = reverse(@str),@endp = 0

if(SUBSTRING(@reversestr,1,1) = ‘ ‘)

begin

return @str

end

while (@endflag = 0 and @i<=@length)

begin

if(SUBSTRING(@reversestr,@i,1) != ‘ ’)

begin

set @endflag = 1

set @endp = @length – @i + 1

end

set @i = @i + 1

end

set @return_str = substring(@str,1,@endp)

set @j=1

set @appstr= ”

while(@j<=2*(@i-2))

begin

set @appstr = @appstr + ‘ ‘

set @j = @j + 1

end

set @return_str = @return_str + @appstr

return @return_str

end

转载于:https://www.cnblogs.com/JoePotter/p/4992188.html