Bạn không cần phải tương tác với mã được quản lý, vì bạn có thể sử dụng LIKE:
CREATE TABLE #Sample(Field varchar(50), Result varchar(50))
GO
INSERT INTO #Sample (Field, Result) VALUES ('ABC123 ', 'Do not match')
INSERT INTO #Sample (Field, Result) VALUES ('ABC123.', 'Do not match')
INSERT INTO #Sample (Field, Result) VALUES ('ABC123&', 'Match')
SELECT * FROM #Sample WHERE Field LIKE '%[^a-z0-9 .]%'
GO
DROP TABLE #Sample
Khi biểu thức của bạn kết thúc bằng +
bạn có thể sử dụng '%[^a-z0-9 .][^a-z0-9 .]%'
CHỈNH SỬA :
Nói rõ hơn:SQL Server không hỗ trợ các biểu thức chính quy mà không có mã được quản lý. Tùy thuộc vào tình huống, LIKE
toán tử có thể là một tùy chọn, nhưng nó thiếu tính linh hoạt mà biểu thức chính quy cung cấp.