Sto tentando di creare una funzione in SQL Server 2005 per verificare se un messaggio di posta elettronica è in un formato valido con espressioni regolari.Funzione di verifica e-mail SQL utilizzando Regex
Ecco quello che ho finora:
CREATE FUNCTION isValidEmailFormat
(
@Email varchar(100)
)
RETURNS bit
AS
BEGIN
DECLARE @Result bit
SET @Result = (SELECT CASE
WHEN @Email LIKE '%[a-zA-Z0-9_\-][email protected]([a-zA-Z0-9_\-]+\.)+ (com|org|edu|nz|au])%'
THEN 1
ELSE 0
END AS Valid)
RETURN @Result
END
Sto facendo qualcosa di sbagliato con la mia espressione regolare? O devo fare qualcosa di più per confrontare un varchar con un'espressione regolare?
operativa -Editazione-
In questo momento, qualunque stringa ho messo in restituisce un 0, anche se il formato di posta elettronica in sé è corretta.
Non penso che questo sia un tuo problema, ma c'è un extra ']' dopo 'au'. –
@ acheong87 Questo non era il problema. Grazie, anche perché potrebbe aiutarmi in seguito quando trovo una soluzione. –