SSIS 2008-如何提取unicode字符并保留非unicode字符串
我正在使用SSIS 2008 R2 我想要一个unicode字符串,提取所有“仅unicode”字符,这样我就剩下一个“非unicode”字符串 在我的情况下,它应该主要是控制字符,CR,LF等SSIS 2008-如何提取unicode字符并保留非unicode字符串,ssis,sql-server-2008-r2,Ssis,Sql Server 2008 R2,我正在使用SSIS 2008 R2 我想要一个unicode字符串,提取所有“仅unicode”字符,这样我就剩下一个“非unicode”字符串 在我的情况下,它应该主要是控制字符,CR,LF等 没有一英里长的替换序列,有没有一种简单的方法可以做到这一点?不确定这是否是您想要的。T-SQL中有一个函数返回字符的unicode整数值。如果“仅限unicode”表示unicode整数值大于255的字符,则可以使用此代码获取不含“unicode”字符的字符串 declare @str nvarchar
没有一英里长的替换序列,有没有一种简单的方法可以做到这一点?不确定这是否是您想要的。T-SQL中有一个函数返回字符的unicode整数值。如果“仅限unicode”表示unicode整数值大于255的字符,则可以使用此代码获取不含“unicode”字符的字符串
declare @str nvarchar(5)
declare @str2 nvarchar(5)
set @str = 'A'+nchar(300)+'B'+nchar(400)+'C'
set @str2 = ''
;with cte as
(
select
left(@str, 1) as val,
stuff(@str, 1, 1, '') as rest
union all
select
left(rest, 1) as val,
stuff(rest, 1, 1, '') as rest
from cte
where len(rest) > 0
)
select @str2 = @str2 + val
from cte
where unicode(val) < 256
print @str
print @str2
AĬBƐC
ABC