Zestawienie wzorców wyrażeń regularnych
Poprzednim razem zaprezentowałem szczątkowy zarys zastosowania wyrażeń regularnych. Czas teraz, by znacznie rozszerzyć to zagadnienie. W tej lekcji zaprezentuję kilka przykładów, które powinny w przystępny sposób zobrazować główne zastosowanie wyrażeń regularnych w języku PHP.
Znaki specjalne
W tworzeniu szablonu wyrażenia używamy tzw. znaków specjalnych. Cztery z nich poznaliśmy ostatnio (^ – znak początku szablonu oraz zaprzeczenia, [ ] – znaki zakresu, $ – znak końca wyrażenia, – – przedział). Poniżej znajdziecie zestawienie ważniejszych znaków specjalnych:
. | Zastępuje dowolny znak |
\s | Spacja |
\n | Znak nowej linii |
\d | Cyfra |
^ | Początek linii lub zaprzeczenie |
$ | Koniec linii |
| | Alternatywa |
{a,b} | Ilość wystąpień danego wzorca – co najmniej a i co najwyżej b razy |
{a,} | Jak wyżej, bez limitu górnego |
{,b} | Jak wyżej, bez limitu dolnego |
{a} | Dokładnie a wystąpień |
? | Zero lub jedno wystąpienie; tak samo jak {0,1} |
+ | Jedno lub więcej wystąpień; tak samo jak {1,} |
* | Dowolna ilość wystąpień (również zero); podobnie jak {0,} |
[] | Zakres |
Znak ” \ „
Patrząc na tabelkę powyżej widzimy, że część znaków traktowana jest jako znaki specjalne. Co w przypadku, gdy chcemy sprawdzić, czy w stringu występuje kropka? Wpisując /^[.]$/ interpreter potraktuje wpisaną kropkę jako dowolny znak. Możemy jednak wymusić, by kropka była sprawdzana jako znak kropki – wystarczy poprzedzić ją odwrotnym ukośnikiem. Nasz wzorzec wyglądałby wtedy następująco: /^[\.]$/. Idąc dalej tym tokiem myślenia, żeby sprawdzić, czy w ciągu występuje znak \, należy również poprzedzić go odwrotnym ukośnikiem, otrzymując „\\”.
Na tym zakończmy teoretyczne rozważania. W kolejnej lekcji poznamy praktyczne zastosowanie nabytej wiedzy poparte użytecznymi przykładami. Serdecznie zapraszam!
Spis lekcji w rozdziale czwartym
Poprzednia lekcja:Wyrażenia regularne | Następna lekcja: Sprawdzanie poprawności wpisywanego imienia oraz nazwiska |