Wyrażenia regularne. Leksykon kieszonkowy.pdf

(932 KB) Pobierz
C:\Andrzej\PDF\ABC nagrywania p³yt CD\1 strona.cdr
IDZ DO
PRZYK£ADOW Y ROZDZIA£
Wyra¿enia regularne.
SPIS TRECI
Leksykon kieszonkowy
KATALOG KSI¥¯EK
Autor: Tony Stubblebine
T³umaczenie: Piotr Rajca
ISBN: 83-7361-075-8
Format: B5, stron: 128
KATALOG ONLINE
ZAMÓW DRUKOWANY KATALOG
TWÓJ KOSZYK
DODAJ DO KOSZYKA
Wyra¿enia regularne s¹ niezwykle potê¿nym mechanizmem s³u¿¹cym do
dopasowywania i manipulowania tekstami. Choæ s¹ one dostêpne w wielu
nowoczesnych jêzykach programowania, to jednak w ka¿dym z nich posiadaj¹
one nieco inne mo¿liwoci, a subtelne ró¿nice w ich sk³adni sprawiaj¹, ¿e nie s¹
one w pe³ni zgodne z wyra¿eniami stosowanymi w innych jêzykach. Wiele jêzyków
programowania implementuje wyra¿enia regularne, jednak ¿aden z nich nie robi
tego w identyczny sposób.
Ksi¹¿ka „Wyra¿enia regularne. Leksykon kieszonkowy” zawiera krótk¹ prezentacjê
pojêæ zwi¹zanych z wyra¿eniami regularnymi oraz omówienia ich najczêciej
spotykanych implementacji dysponuj¹cych najwiêkszymi mo¿liwociami. Nie bêdziesz
ju¿ musia³ rozszyfrowywaæ tajemniczych lub chaotycznych materia³ów informacyjnych!
Niniejsza ksi¹¿ka zawiera tabele i porady dotycz¹ce stosowania wyra¿eñ regularnych
w jêzykach Perl, Java, Python, C# (i rodowisku .NET), PHP, JavaScript, w bibliotece
PCRE oraz kilku programach (vi, awk, egrep oraz sed).
Ten leksykon mo¿na potraktowaæ jako dope³nienie doskona³ej i wyczerpuj¹cej ksi¹¿ki
powiêconej wyra¿eniom regularnym — „Wyra¿enia regularne”, autorstwa Jeffreya E. F.
Friedla. Dziêki niemu bêdziesz móg³ szybko okreliæ sk³adniê oraz szczególne cechy
wyra¿eñ regularnych w dowolnym u¿ywanym jêzyku programowania.
CENNIK I INFORMACJE
ZAMÓW INFORMACJE
O NOWOCIACH
ZAMÓW CENNIK
CZYTELNIA
FRAGMENTY KSI¥¯EK ONLINE
Wydawnictwo Helion
ul. Chopina 6
44-100 Gliwice
tel. (32)230-98-63
e-mail: helion@helion.pl
66702878.002.png 66702878.003.png 66702878.004.png
Spis treci
O ksice ...................................................................................5
Przedstawienie wyrae regularnych
oraz zagadnie dopasowywania wzorców ........................7
Metaznaki, tryby oraz konstrukcje........................................................10
Reprezentacja znaków.............................................................................10
Perl 5.8 .....................................................................................22
Obsługiwane metaznaki..........................................................................22
Operatory wyrae regularnych ...........................................................27
Obsługa Unicode......................................................................................30
Przykłady ..................................................................................................31
Inne )ródła informacji.............................................................................32
Java (java.util.regex).............................................................33
Obsługiwane metaznaki..........................................................................33
Klasy i interfejsy zwi,zane z wykorzystaniem
wyrae regularnych...........................................................................38
Obsługa Unicode......................................................................................44
Przykłady ..................................................................................................45
Inne )ródła informacji.............................................................................47
.NET i C# .................................................................................48
Obsługiwane metaznaki..........................................................................48
Klasy i interfejsy zwi,zane z wykorzystaniem
wyrae regularnych...........................................................................53
Obsługa Unicode......................................................................................59
Przykłady ..................................................................................................59
Inne )ródła informacji.............................................................................62
Python......................................................................................62
Obsługiwane metaznaki..........................................................................62
Obiekty i funkcje modułu re ..................................................................66
Spis treci
3
Obsługa Unicode......................................................................................71
Przykłady ..................................................................................................72
Inne )ródła informacji.............................................................................73
Biblioteka PCRE....................................................................73
Obsługiwane metaznaki..........................................................................79
PCRE API ..................................................................................................79
Obsługa Unicode......................................................................................83
Przykłady ..................................................................................................84
Inne )ródła informacji.............................................................................88
PHP ..........................................................................................88
Obsługiwane metaznaki..........................................................................88
Funkcje obsługi wyrae regularnych..................................................93
Przykłady ..................................................................................................96
Inne )ródła informacji.............................................................................98
Edytor vi..................................................................................98
Obsługiwane metaznaki..........................................................................98
Dopasowywanie wzorców ...................................................................102
Przykłady ................................................................................................103
Inne )ródła informacji...........................................................................104
JavaScript..............................................................................104
Obsługiwane metaznaki........................................................................104
Metody i obiekty zwi,zane z wykorzystaniem
wyrae regularnych.........................................................................107
Przykłady ................................................................................................111
Inne )ródła informacji...........................................................................113
Programy obsługiwane z wiersza polece......................113
Obsługiwane metaznaki........................................................................113
Inne )ródła informacji...........................................................................119
Skorowidz .............................................................................121
4
Wyraenia regularne. Leksykon kieszonkowy
Wyraenia regularne , ksika Jeffreya E. F. Friedla (wydaw-
nictwo Helion) szczegółowo opisuje wyraenia regularne
uywane w j#zyku Perl (strony 203 – 302).
perlre — to jeden z działów dokumentacji j#zyka Perl, do-
st#pnych w wi#kszo,ci jego dystrybucji.
Java (java.util.regex)
W Java 1.4 obsługa wyrae2 regularnych została zaimplemen-
towana w formie pakietu , opracowanego przez
firm# Sun. Cho5 istniej take inne pakiety obsługujce wyraenia
regularne, przeznaczone dla wcze,niejszych wersji j#zyka, to jed-
nak standardem stanie si# zapewne pakiet firmy Sun. W pakiecie
tym wykorzystywany jest tradycyjny mechanizm dopasowywania
NFA . Wyja,nienie zasad działania tego mechanizmu mona
znale65 w rozdziale pod tytułem „Przedstawienie wyrae2 regu-
larnych oraz zagadnie2 dopasowywania wzorców”.
Obsługiwane metaznaki
Pakiet obsługuje metaznaki oraz metasekwencje
przedstawione w tabelach od 10. do 14. Bardziej szczegółowe
opisy poszczególnych metaznaków mona znale65 w cz#,ci zaty-
tułowanej „Metaznaki, tryby oraz konstrukcje”.
Tabela 10. Reprezentacje znaków
Sekwencja
Znaczenie
Alarm (dzwonek)
Znak cofnicia; , obsługiwany wyłcznie w klasie znaków
Znak
ESC
,
Znak nowego wiersza,
Java (java.util.regex)
33
66702878.005.png
Znak powrotu karetki,
Tabela 10. Reprezentacje znaków — cig dalszy
Sekwencja
Znaczenie
Znak wysunicia kartki,
Znak tabulacji poziomej,
Znak reprezentowany przez jedno-, dwu- lub trzycyfrow liczb
ósemkow
Znak reprezentowany przez jedno- lub dwucyfrow liczb
szesnastkow
Znak reprezentowany przez czterocyfrowy kod szesnastkowy
Unicode
Znak sterujcy o podanej nazwie
Tabela 11. Klasy znaków oraz skrótowe zapisy klas
Klasa
Znaczenie
Pojedynczy znak podany lub zawierajcy si w okre%lonym
zakresie
Pojedynczy znak, który nie został podany lub nie zawiera si
w okre%lonym zakresie
Dowolny znak za wyjtkiem znaku nowego wiersza
(chyba (e stosowany jest tryb
)
Znak mogcy tworzy) wyrazy;
!"!#!$
%
Znak, który nie mo(e tworzy) wyrazów; !"!#!$
&
Cyfra; !
Dowolny znak nie bdcy cyfr;
!
'
odstp;
(
)
Dowolny znak nie bdcy odstpem; (
*+,
Znak nale(cy do okre%lonej klasy znaków POSIX bd/
wła%ciwo%ci lub bloku Unicode
-+,
Znak, który nie nale(y do okre%lonej klasy znaków POSIX
ani wła%ciwo%ci lub bloku Unicode
34
Wyraenia regularne. Leksykon kieszonkowy
66702878.001.png
Zgłoś jeśli naruszono regulamin