1. 程式人生 > >SQLSERVER 判斷一個字串是否包含特殊字元

SQLSERVER 判斷一個字串是否包含特殊字元

DECLARE @Text VARCHAR(50)
SET @Text = 'as df'

DECLARE @ExistSpaceChar INT
DECLARE @StrCount INT

SET  @ExistSpaceChar = 0
SELECT  @StrCount = LEN(@Text)
WHILE (@StrCount >0)
BEGIN
    SELECT SUBSTRING(@Text, @StrCount, 1), ASCII(SUBSTRING(@Text, @StrCount, 1))
   
 IF  (ASCII(SUBSTRING(@Text, @StrCount, 1)) NOT BETWEEN 33 AND 126)-- 33 - 126 之間是可見字元。
 BEGIN
  -- find space or invisible char
  PRINT 'find space or invisible char'
  SET  @ExistSpaceChar = 1
  BREAK
 END
 SET @StrCount = @StrCount -1
END

SELECT 'ExistSpaceChar=' + CONVERT(VARCHAR(10), @ExistSpaceChar)