我需要在输入中使用' x
'替换所有字母数字字符。
'12 34 - a'
成为'xx xx - x
'。我试着用
patindex
[^a-zA-Z0-9]
,但在第一次替换后仍然找到相同的字母数字。看起来patindex
仅在删除字符时起作用
有人可以为问题提出解决方案
答案 0 :(得分:1)
试试这个:
DECLARE @t VARCHAR(max) = '12 34 - a'
DECLARE @Keep VARCHAR(50)
SET @Keep = '%[a-vyz0-9]%'
WHILE PATINDEX(@Keep, @t) >0
Set @t = Stuff(@t, PatIndex(@Keep, @t), 1, 'x')
SELECT @t