Sqlserver
 sql >> Database >  >> RDS >> Sqlserver

Utilizzo di RegEx in SQL Server

Non è necessario interagire con il codice gestito, poiché puoi utilizzare 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

Poiché la tua espressione termina con + puoi andare con '%[^a-z0-9 .][^a-z0-9 .]%'

MODIFICA :
Per chiarire:SQL Server non supporta le espressioni regolari senza codice gestito. A seconda della situazione, il LIKE operatore può essere un'opzione, ma manca della flessibilità fornita dalle espressioni regolari.