
WR pozwalają w prosty sposób sprawdzić format i poprawność wprowadzonych danych tekstowych, ale także wyszukiwać fragmenty tekstu. Na przykład, sprawdzenie poprawności podanego adresu bez wykorzystania WR wymagałoby conajmniej jednej pętli i instrukcji warunkowej. Dzięki WR, w PHP sprawa wygląda następująco:
<?php
if(preg_match('/^([a-z0-9_-]+)@([a-z]0-9\.)+([a-z-]{2,5})$/', $sEmail)){
echo 'Email OK';
}else{
echo 'Email błędny';
}
?>
Całość testu sprowadza się do użycia funkcji preg_match() sprawdzającej zgodność zawartości zmiennej $sEmail z wyrażeniem
^([a-z0-9_-]+)@([a-z]0-9\.)+([a-z]{2,5})$
Dodać także należy, że to sprawdzenie nie jest zbyt szczegółowe - sprowadza się jedynie do sprawdzenia, czy podany ciąg znaków zawiera znak @ (at), a przed nim znajduje się przynajmniej jedna litera (lub cyfra lub jeden ze znaków: - _) a za znakiem @ czy znajdują się grupy liter lub cyfr rozdzielone kropkami, przy czym ostatnia grupa może zawierać tylko 2 do 5 liter.
Nie będę teraz wyjaśniał znaczenia poszczególnych części tego wyrażenia. Dlaczego? Zagadnienie WR to temat nad wyraz obszerny - Jeffrey Friedl pisząc Wyrażenia Regularne (ang. Mastering Regular Expressions) potrzebował 320 stron aby opisać WR! I trzeba przyznać, że zrobił to wybitnie! Pozycja wydana nakładem wydawnictwa Helion, dostarcza gruntownej i szczegółowej wiedzy na temat wyrażeń regularnych. Co najważniejsze Friedl opisuje nie tylko składnię WR, ale także sam mechanizm, co znacznie ułatwia poznanie tego - jakże wygodnego - narzędzia.
Kolejnym bardzo istotnym atutem tej pozycji jest wybitny przekład oryginału, którego dokonał Adam Podstawczyński.
No comments:
Post a Comment