我需要不满足条件的字符列表,例如
Collapse | Copy Code
--Validation for X
declare @test varchar(50)
set @test='ds[fds'
if @test like '%[^0-9a-zA-Z .()/-]%'
print 'invalid -yes'
else
print 'invalid -no'
在上述情况下,我需要输出' ['如果有多个无效字符则需要全部
,这也不满足条件Collapse | Copy Code
declare @phone varchar(50)
set @phone='212@@f'
select REPLACE(@phone
, SUBSTRING(@phone, PATINDEX('%[^0-9a-zA-Z .()/-]%', @phone), 1)
, '')
但是如果有像#39;%'这样的sql字符则不起作用。在输入字符串中,解决方案是什么。
Collapse | Copy Code
declare @phone varchar(50)
set @phone='212%@@f'
select
REPLACE(@phone,
SUBSTRING(@phone, PATINDEX('%[^0-9a-zA-Z .()/-]%', @phone), 1), '')