Trochę podstaw z wyrażeniach regularnych REGEX

W tym artykule przedstawię kluczowe, gotowe regułki wyrażeń regularnych, gdyż uważam, że na przykładach człowiek najlepiej się uczy, polecę też poniżej kilka kursów oraz serwisy, w których możecie walidować wyrażenia regularne.

A więc do dzieła, w komentarzach możecie wpisywać przydatne (ale uniwersalne) wg Was REGEX’y, dodam je wtedy do artykułu.

^[a-zA-Z0-9]{8,}$ #8 or more characters
^[a-zA-Z0-9]{,16}$ #Less than or equal to 16 characters
^[a-zA-Z0-9]{8}$ #Exactly 8 characters

Email REGEX wg RFC 5322 Official Standard: 

(?:[a-z0-9!#$%&'*+\/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+\/=?^_`{|}~-]+)*|"(?:[\x01-\x08\x0b\x0c\x0e-\x1f\x21\x23-\x5b\x5d-\x7f]|\\[\x01-\x09\x0b\x0c\x0e-\x7f])*")@(?:(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?|\[(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?|[a-z0-9-]*[a-z0-9]:(?:[\x01-\x08\x0b\x0c\x0e-\x1f\x21-\x5a\x53-\x7f]|\\[\x01-\x09\x0b\x0c\x0e-\x7f])+)\])

lub skrócony

^[a-zA-Z0-9_.+-]+@[a-zA-Z0-9-]+\.[a-zA-Z0-9-.]+$

lub REGEX uwzględinający długość domen  rozszrezeń od 2 do 5 znaków, dlaczego 5 znaków jako rozszerzenie domeny? z powodu zarejestrowanego jakiś czas temu sufiksu *travel

^(([a-zA-Z0-9_-.]+)@([a-zA-Z0-9_-.]+).([a-zA-Z]{2,5})$)?

działają z powodzeniem, obydwa testowane na https://regex101.com/

Poniższy REGEX może służyć do sprawdzania np. wprowadzonego numeru telefonu. Jednocześnie znak zapytania po wyrażeniu w nawiasach pozwala na niewprowadzanie numeru. Podsumowując, albo wprowadzamy min. 9 cyfr a max. 16, albo nic.

(^\d{9,16})?
bardziej zrozumiały zapis
(^[0-9]{9,16}$)?

Tutaj możliwe także podanie prefixu z plusem:
([+]\d{9,16}|\d{9,16})?