Sqlserver
 sql >> Base de données >  >> RDS >> Sqlserver

Utilisation de RegEx dans SQL Server

Vous n'avez pas besoin d'interagir avec le code managé, car vous pouvez utiliser 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

Comme votre expression se termine par + vous pouvez utiliser '%[^a-z0-9 .][^a-z0-9 .]%'

MODIFIER :
Pour être clair :SQL Server ne prend pas en charge les expressions régulières sans code managé. Selon la situation, le LIKE L'opérateur peut être une option, mais il n'a pas la flexibilité qu'offrent les expressions régulières.