3.22 Co to są wyrażenia regularne i do czego służą?

Ostatnia modyfikacja: 2003-03-26 19:21:12

Na ten temat napisano już książki-biblie, pośród których najlepszą jest ta, o dość wyszukanym tytule "Wyrażenia regularne", autorstwa Jeffrey'a E. F. Friedl'a. Wyrażenia regularne to ogromne narzędzie dostarczające możliwości zaawansowanych manipulacji oraz porównań na ciągach znaków. "Regular Expressions" jest implementowane w wielu innych językach (np. JavaScript). Wyrażenia regularne możemy stosować w takich funkcjach PHP jak: ereg(), ereg_replace(), eregi(), eregi_replace(), split(), spliti().
http://pl.php.net/manual/pl/ref.regex.php

Dla ciekawskich można wspomnieć, że powyższe funkcje korzystają z rozszerzonej składni POSIX dla wyrażeń regularnych i nie są to jedyne funkcje PHP działające na wyrażeniach.
Osoby znające Perl'a mogą używać innych funkcji: preg_*(). Jest tam stosowana składnia wyrażeń zgodna właśnie z tym językiem, trochę odmienna od tej wykorzystywanej w ereg().
http://pl.php.net/manual/pl/ref.pcre.php
Regular Expression Details:
http://pl.php.net/manual/pl/pcre.pattern.syntax.php

Przykład:
Proste sprawdzenie poprawności adresu e-mail:

if (! ereg ("^.+@.+\..+$", $email))
    echo 'Nieprawidłowy adres e-amil!';

A przekładając to na nasz język:
adres ma zaczynać się (^) od jednego lub więcej (+) dowolnych znaków (.), potem jest małpa (@), znowu jeden lub kilka znaków (.+), kropka (\.) i zakończenie stringa ($) dowolnym znakiem.

Na początek możesz zobaczyć poniższe tutoriale:
http://www.leon.w-wa.pl/texts/kurs/text.php#regex
http://www.phpbuilder.com/columns/dario19990616.php3


Powrót do indeksu