JersyWoo > web business

Lost in the global village

Filtrování emailů (sql – (not) regexp)

Srpen 29th, 2006

V Sql se dá vyhledávat i pomocí regulárních výrazů, potřeba je k tomu výraz REGEXP. Podoba příkazů je jednoduchá „SELECT… FROM … WHERE …(název sloupce)…. (NOT) REGEXP„. Výraz REGEXP vybere záznamy, které souhlasí s regulárem a pokud přidáte protipříkaz NOT (NOT REGEXP) vybere záznamy, které neodpovídají reguláru.

Jako příklad uvádím sql dotaz, který z tabulky, která obsahuje sloupeček s emaily vybere záznamy, které neodpovídají logickému emailu:

SELECT * FROM „tabulka_s_emaily“ WHERE „sloupecek_s_emaily“ NOT REGEXP „^[_a-zA-Z0-9-]+(\.[_a-zA-Z0-9-]+)*@[a-zA-Z0-9-]+((\.[a-zA-Z0-9-]{2,6}){1,2})“;

Leave a Reply