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żliwości, 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żliwościami. 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 poświęconej wyrażeniom regularnym – "Wyrażenia regularne", autorstwa Jeffreya E. F. Friedla. Dzięki niemu będziesz mógł szybko określić składnię oraz szczególne cechy wyrażeń regularnych w dowolnym używanym języku programowania.
1. IDZ DO
PRZYK£ADOWY ROZDZIA£
SPIS TRE CI Wyra¿enia regularne.
Leksykon kieszonkowy
KATALOG KSI¥¯EK
Autor: Tony Stubblebine
KATALOG ONLINE T³umaczenie: Piotr Rajca
ISBN: 83-7361-075-8
ZAMÓW DRUKOWANY KATALOG Tytu³ orygina³u: Regular Expressions Pocket Reference
Format: B5, stron: 128
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¹
CENNIK I INFORMACJE one nieco inne mo¿liwo ci, 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
ZAMÓW INFORMACJE programowania implementuje wyra¿enia regularne, jednak ¿aden z nich nie robi
O NOWO CIACH tego w identyczny sposób.
Ksi¹¿ka „Wyra¿enia regularne. Leksykon kieszonkowy” zawiera krótk¹ prezentacjê
ZAMÓW CENNIK pojêæ zwi¹zanych z wyra¿eniami regularnymi oraz omówienia ich najczê ciej
spotykanych implementacji dysponuj¹cych najwiêkszymi mo¿liwo ciami. Nie bêdziesz
ju¿ musia³ rozszyfrowywaæ tajemniczych lub chaotycznych materia³ów informacyjnych!
CZYTELNIA 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
FRAGMENTY KSI¥¯EK ONLINE PCRE oraz kilku programach (vi, awk, egrep oraz sed).
Ten leksykon mo¿na potraktowaæ jako dope³nienie doskona³ej i wyczerpuj¹cej ksi¹¿ki
po wiêconej wyra¿eniom regularnym — „Wyra¿enia regularne”, autorstwa Jeffreya E. F.
Friedla. Dziêki niemu bêdziesz móg³ szybko okre liæ sk³adniê oraz szczególne cechy
wyra¿eñ regularnych w dowolnym u¿ywanym jêzyku programowania.
Wydawnictwo Helion
ul. Chopina 6
44-100 Gliwice
tel. (32)230-98-63
e-mail: helion@helion.pl
2. Spis treści
O książce ...................................................................................5
Przedstawienie wyrażeń 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 wyrażeń 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
wyrażeń 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
wyrażeń 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 treści 3
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 wyrażeń 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
wyrażeń 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 Wyrażenia regularne. Leksykon kieszonkowy
4. • Wyrażenia regularne, książka Jeffreya E. F. Friedla (wydaw-
nictwo Helion) szczegółowo opisuje wyrażenia regularne
używane 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 wyrażeń regularnych została zaimplemen-
towana w formie pakietu LCXCWVKNTGIGZ, opracowanego przez
firmę Sun. Choć istnieją także inne pakiety obsługujące wyrażenia
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 można
znaleźć w rozdziale pod tytułem „Przedstawienie wyrażeń regu-
larnych oraz zagadnień dopasowywania wzorców”.
Obsługiwane metaznaki
Pakiet LCXCWVKNTGIGZ obsługuje metaznaki oraz metasekwencje
przedstawione w tabelach od 10. do 14. Bardziej szczegółowe
opisy poszczególnych metaznaków można znaleźć w części zaty-
tułowanej „Metaznaki, tryby oraz konstrukcje”.
Tabela 10. Reprezentacje znaków
Sekwencja Znaczenie
C Alarm (dzwonek)
D Znak cofnięcia; Z, obsługiwany wyłącznie w klasie znaków
G Znak ESC, Z$
P Znak nowego wiersza, Z#
Java (java.util.regex) 33
5. T Znak powrotu karetki, Z
Tabela 10. Reprezentacje znaków — ciąg dalszy
Sekwencja Znaczenie
H Znak wysunięcia kartki, Z%
V Znak tabulacji poziomej, Z
ÎUGOMQYC Znak reprezentowany przez jedno-, dwu- lub trzycyfrową liczbę
ósemkową
ZUGUPCUVMQYC Znak reprezentowany przez jedno- lub dwucyfrową liczbę
szesnastkową
WUGUPCUVMQYC Znak reprezentowany przez czterocyfrowy kod szesnastkowy
Unicode
EPCM Znak sterujący o podanej nazwie
Tabela 11. Klasy znaków oraz skrótowe zapisy klas
Klasa Znaczenie
=? Pojedynczy znak podany lub zawierający się w określonym
zakresie
=@? Pojedynczy znak, który nie został podany lub nie zawiera się
w określonym zakresie
Dowolny znak za wyjątkiem znaku nowego wiersza
(chyba e stosowany jest tryb 16#..)
Y Znak mogący tworzyć wyrazy; =C#A?
9 Znak, który nie mo e tworzyć wyrazów; =@C#A?
F Cyfra; =?
Dowolny znak nie będący cyfrą; =@?
U odstęp; = VPHTZ$?
5 Dowolny znak nie będący odstępem; =@ VPHTZ$?
R]Y C EKYQ è_ Znak nale ący do określonej klasy znaków POSIX bądź
właściwości lub bloku Unicode
2]Y C EKYQ è_ Znak, który nie nale y do określonej klasy znaków POSIX
ani właściwości lub bloku Unicode
34 Wyrażenia regularne. Leksykon kieszonkowy
6. Tabela 12. Punkty zakotwiczenia i warunki zerowej długości
Sekwencja Znaczenie
@ Początek łańcucha znaków lub, w trybie wielowierszowym (/7.6+.+0'),
miejsce poło one bezpośrednio za znakiem nowego wiersza
# Początek łańcucha znaków, niezale nie od u ywanego trybu
dopasowywania
Koniec łańcucha znaków lub, w trybie wielowierszowym (/7.6+.+0'),
miejsce poło one bezpośrednio przed dowolnym znakiem nowego wiersza
Koniec łańcucha znaków lub miejsce poło one przed znakiem nowego
wiersza kończącym wejściowy łańcuch znaków, niezale nie od u ywanego
trybu dopasowywania
Koniec łańcucha znaków, niezale nie od u ywanego trybu dopasowywania
D Granica słowa
$ Dowolne miejsce, które nie jest granicą słowa
) Początek aktualnego wyszukiwania
! Pozytywne przewidywanie
! Negatywne przewidywanie
Pozytywne przewidywanie wsteczne
Negatywne przewidywanie wsteczne
Tabela 13. Komentarze i modyfikatory trybu
Modyfikator Znak Znaczenie
(sekwencja) trybu
2CVVGTP70+:A F Traktuje znak P jako jedyny znak końca wiersza
.+0'5
2CVVGTP16#.. U Kropka () odpowiada dowolnemu znakowi, w tym
tak e znakowi zakończenia wiersza
2CVVGTP/7.6+.+0' O Metaznaki @ oraz pasują do miejsc poło onych
tu obok osadzonych znaków końca wiersza
2CVVGTP%1//'065 Z Ignoruje odstępy i pozwala na umieszczanie
komentarzy w wyra eniu regularnym
Java (java.util.regex) 35
7. 2CVVGTP%#5'A K Podczas dopasowywania nie będzie uwzględniana
+05'05+6+8' wielkość liter nale ących do kodu ASCII
Tabela 13. Komentarze i modyfikatory trybu — ciąg dalszy
Modyfikator Znak Znaczenie
(sekwencja) trybu
2CVVGTP70+%1'A W Podczas dopasowywania nie będzie uwzględniana
%#5' wielkość liter Unicode
2CVVGTP%#010A'3 Tryb „kanonicznej równowa ności” Unicode,
w którym znak oraz sekwencja składająca się
ze znaku bazowego i znaków łączących o takiej
samej reprezentacji wizualnej są traktowane jako
identyczne
!VT[D Włącza podane tryby (KFOUWZ) w dalszej części
podwyra enia
!VT[D Wyłącza podane tryby (KFOUWZ) w dalszej części
podwyra enia
!VT[D. Włącza podane tryby (KFOUWZ) w wyra eniu
podanym pomiędzy dwukropkiem i nawiasem
zamykającym
!VT[D Wyłącza podane tryby (KFOUWZ) w wyra eniu
podanym pomiędzy dwukropkiem i nawiasem
zamykającym
W trybie Z sprawia, e wszystkie znaki do
końca wiersza będą traktowane jako komentarz
Tabela 14. Grupowanie, przechwytywanie, konstrukcje warunkowe
i sterowanie
Sekwencja Znaczenie
Grupuje podwzorce, przechwytuje pasujące do nich łańcuchy znaków
i zapamiętuje je w metaznakach , , … oraz , , …
P Zawiera tekst odpowiadający P-tej grupie przechwytującej
P W łańcuchu zamiennika zawiera tekst dopasowany do P-tej grupy
przechwytującej
36 Wyrażenia regularne. Leksykon kieszonkowy
8. ! Grupuje podwzorce, lecz nie powoduje przechwycenia i zapamiętania
pasujących do nich łańcuchów znaków
! Nie pozwala na powtórne wykorzystanie tekstu pasującego do podwzorca
Tabela 14. Grupowanie, przechwytywanie, konstrukcje warunkowe
i sterowanie — ciąg dalszy
Sekwencja Znaczenie
^ Sprawdza alternatywne podwzorce
9. Dopasowuje podwzorzec 0 lub więcej razy
Dopasowuje podwzorzec 1 lub więcej razy
! Dopasowuje podwzorzec 1 lub 0 razy
]P_ Dopasowuje podwzorzec dokładnie P razy
]P_ Dopasowuje podwzorzec co najmniej P razy
]Z[_ Dopasowuje podwzorzec co najmniej Z razy, jednak nie więcej ni [ razy
10. ! Dopasowuje 0 lub więcej powtórzeń podwzorca, przy czym wybierana
jest najmniejsza mo liwa liczba powtórzeń
! Dopasowuje 1 lub więcej powtórzeń podwzorca, przy czym wybierana
jest najmniejsza mo liwa liczba powtórzeń
!! Dopasowuje 0 lub 1 powtórzenie podwzorca, przy czym wybierana jest
najmniejsza mo liwa liczba powtórzeń
]P_! Dopasowuje podwzorzec co najmniej P razy, przy czym wybierana jest
najmniejsza mo liwa liczba powtórzeń
]Z[_! Dopasowuje podwzorzec co najmniej Z razy, jednak nie więcej ni [
razy, przy czym wybierana jest najmniejsza mo liwa liczba powtórzeń
11. Dopasowuje 0 lub więcej powtórzeń podwzorca, przy czym nigdy nie
jest realizowane nawracanie
Dopasowuje 1 lub więcej powtórzeń podwzorca, przy czym nigdy nie
jest realizowane nawracanie
!
Dopasowuje 0 lub 1 powtórzenie podwzorca, przy czym nigdy nie jest
realizowane nawracanie
]P_
Dopasowuje podwzorzec co najmniej P razy, przy czym nigdy nie jest
realizowane nawracanie
]P_
Dopasowuje podwzorzec co najmniej P razy, przy czym nigdy nie jest
realizowane nawracanie
Java (java.util.regex) 37
12. ]Z[_
Dopasowuje podwzorzec co najmniej Z razy, jednak nie więcej ni [
razy, przy czym nigdy nie jest realizowane nawracanie
Klasy i interfejsy związane
z wykorzystaniem wyrażeń regularnych
W języku Java 1.4 wprowadzono dwie podstawowe klasy zwią-
zane z obsługą wyrażeń regularnych — LCXCWVKNTGIGZ2CVVGTP
oraz LCXCWVKNTGIGZ/CVEJGT, jeden wyjątek — LCXCWVKNTGIGZ
2CVVGTP5[PVCZ'ZEGRVKQP oraz nowy interfejs — %JCT5GSWGPEG. Ponadto
firma Sun zaktualizowała klasę 5VTKPI — aktualnie implementuje
ona interfejs %JCT5GSWGPEG i udostępnia podstawowe metody zwią-
zane z wykorzystaniem wyrażeń regularnych i dopasowywaniem
wzorców. Obiekty 2CVVGTP to skompilowane wyrażenia regularne,
które można dopasowywać do wielu różnych łańcuchów znaków.
Z kolei obiekt /CVEJGT to wynik dopasowania jednego obiektu
2CVVGTP do konkretnego łańcucha znaków (lub dowolnego obiektu
implementującego interfejs %JCT5GSWGPEG).
Znaki odwrotnego ukośnika umieszczone w literałach znakowych
definiujących wyrażenie regularne należy odpowiednio oznaczać
(dodatkowym znakiem odwrotnego ukośnika). A zatem P (znak
nowego wiersza), umieszczany w literałach łańcuchowych Javy,
które mają być użyte jako wyrażenie regularne, należy zapisać
w postaci P.
java.lang.String
Opis
Nowe metody służące do dopasowywania wyrażeń regularnych.
38 Wyrażenia regularne. Leksykon kieszonkowy
13. Metody
DQQNGCP OCVEJGU
5VTKPI Y[TCGPKG4GIWNCTPG
Zwraca wartość VTWG, jeśli podane Y[TCGPKG4GIWNCTPG odpo-
wiada całemu łańcuchowi znaków.
5VTKPI=? URNKV
5VTKPI Y[TCGPKG4GIWNCTPG
Zwraca tablicę łańcuchów znaków, oddzielających od sie-
bie kolejne fragmenty łańcucha odpowiadające podanemu
Y[TCGPKW4GIWNCTPGOW.
5VTKPI=? URNKV
5VTKPI Y[TCGPKG4GIWNCTPG KPV NKOKV
Zwraca tablicę łańcuchów znaków, oddzielających od siebie
pierwsze NKOKV fragmentów łańcucha odpowiadających
podanemu Y[TCGPKW4GIWNCTPGOW.
5VTKPI TGRNCEG(KTUV
5VTKPI Y[TCGPKG4GIWNCTPG 5VTKPI COKGPPKM
Zastępuje podłańcuch odpowiadający podanemu Y[TCGPKW
4GIWNCTPGOW COKGPPKMKGO.
5VTKPI TGRNCEG#NN
5VTKPI Y[TCGPKG4GIWNCTPG 5VTKPI COKGPPKM
Zastępuje wszystkie podłańcuchy odpowiadające podanemu
Y[TCGPKW4GIWNCTPGOW COKGPPKMKGO.
java.util.regex.Pattern extends 1DLGEV
implements 5GTKCNKCDNG
Opis
Reprezentuje wzorzec wyrażenia regularnego.
Metody
UVCVKE 2CVVGTP EQORKNG
5VTKPI Y[TCGPKG4GIWNCTPG
Tworzy nowy obiekt 2CVVGTP na podstawie podanego Y[TC
GPKC4GIWNCTPGIQ.
Java (java.util.regex) 39
14. UVCVKE 2CVVGTP EQORKNG
5VTKPI Y[TCGPKG4GIWNCTPG KPV HNCIK
Tworzy nowy obiekt 2CVVGTP na podstawie podanego Y[TC
GPKC4GIWNCTPGIQ i argumentu HNCIK, którego wartość sta-
nowią modyfikatory trybów połączone ze sobą bitowym
operatorem 14.
KPV HNCIU
Zwraca modyfikatory trybu danego obiektu 2CVVGTP.
/CVEJGT OCVEJGT
%JCT5GSWGPEG NCPEWEJ9GLUEKQY[
Tworzy obiekt /CVEJGT, który umożliwi dopasowanie tego
(VJKU) obiektu 2CVVGTP do podanego NCPEWEJC9GLUEKQYGIQ.
UVCVKE DQQNGCP OCVEJGU
5VTKPI Y[TCGPKG4GIWNCTPG %JCT5GSWGPEG
NCPEWEJ9GLUEKQY[
Zwraca wartość VTWG, jeśli podane Y[TCGPKG4GIWNCTPG od-
powiada całemu łańcuchowi przekazanemu jako NCPEW
EJ9GLUEKQY[.
5VTKPI RCVVGTP
Zwraca wyrażenie regularne użyte do utworzenia danego
obiektu 2CVVGTP.
5VTKPI=? URNKV
%JCT5GSWGPEG NCPEWEJ9GLUEKQY[
Zwraca tablicę łańcuchów znaków, które rozdzielają w poda-
nym NCPEWEJW9GLUEKQY[O kolejne wystąpienia wyrażenia regu-
larnego reprezentowanego przez dany obiekt 2CVVGTP.
5VTKPI=? URNKV
%JCT5GSWGPEG NCPEWEJ9GLUEKQY[ KPV NKOKV
Zwraca tablicę łańcuchów znaków, które rozdzielają w poda-
nym NCPEWEJW9GLUEKQY[O NKOKV wystąpień wyrażenia regu-
larnego reprezentowanego przez dany obiekt 2CVVGTP.
40 Wyrażenia regularne. Leksykon kieszonkowy
15. java.util.regex.Matcher extends 1DLGEV
Opis
Reprezentuje mechanizm dopasowujący wyrażenia regularne oraz
wyniki dopasowania wyrażenia.
Metody
/CVEJGT CRRGPF4GRNCEGOGPV
5VTKPI$WHHGT UD 5VTKPI COKGPPKM
Dołącza podłańcuch poprzedzający dopasowanie oraz COKGP
PKM do bufora znakowego, określonego przy użyciu argu-
mentu UD.
5VTKPI$WHHGT CRRGPF6CKN
5VTKPI$WHHGT UD
Dołącza podłańcuch umieszczony za dopasowaniem do bu-
fora znakowego, określonego przy użyciu argumentu UD.
KPV GPF
Indeks pierwszego znaku za końcem dopasowania.
KPV GPF
KPV ITWRC
Indeks pierwszego znaku znajdującego się za przechwy-
coną ITWRæ.
DQQNGCP HKPF
Odnajduje kolejny fragment łańcucha pasujący do wyrażenia
regularnego.
DQQNGCP HKPF
KPV RQECVGM
Odnajduje kolejny fragment łańcucha pasujący do wyrażenia
regularnego, położony za znakiem o indeksie określonym
jako RQECVGM.
5VTKPI ITQWR
Tekst odpowiadający wyrażeniu regularnemu reprezento-
wanemu przez dany obiekt 2CVVGTP.
Java (java.util.regex) 41
16. 5VTKPI ITQWR
KPV ITWRC
Tekst przechwycony przez grupę przechwytującą, określoną
przez argument ITWRC.
KPV ITQWR%QWPV
Liczba grup przechwytujących zdefiniowanych w wyraże-
niu reprezentowanym przez obiekt 2CVVGTP.
DQQNGCP NQQMKPI#V
Zwraca VTWG, jeśli dopasowanie znajduje się na samym po-
czątku wejściowego łańcucha znaków.
DQQNGCP OCVEJGU
Zwraca VTWG, jeśli 2CVVGTP odpowiada całemu wejściowemu
łańcuchowi znaków.
2CVVGTP RCVVGTP
Zwraca obiekt 2CVVGTP, wykorzystywany w danym obiekcie
/CVEJGT.
5VTKPI TGRNCEG#NN
5VTKPI COKGPPKM
Zastępuje każde dopasowanie podanym COKGPPKMKGO.
5VTKPI TGRNCEG(KTUV
5VTKPI COKGPPKM
Zastępuje pierwsze dopasowanie podanym COKGPPKMKGO.
/CVEJGT TGUGV
Przywraca początkowy stan mechanizmu dopasowywania,
dzięki czemu kolejna operacja dopasowania rozpocznie się
na samym początku wejściowego łańcucha znaków.
/CVEJGT TGUGV
%JCT5GSWGPEG NCPEWEJ9GLUEKQY[
Przywraca początkowy stan mechanizmu dopasowywania
i określa, że ma on działać na podanym NCPEWEJW9GLUEKQY[O.
KPV UVCTV
Indeks pierwszego dopasowanego znaku.
42 Wyrażenia regularne. Leksykon kieszonkowy
17. KPV UVCTV
KPV ITWRC
Indeks pierwszego znaku dopasowanego w grupie prze-
chwytującej, określonej przy użyciu argumentu ITWRC.
java.util.regex.PatternSyntaxException
implements 5GTKCNKCDNG
Opis
Te wyjątki są zgłaszane w celu poinformowania o pojawieniu się
błędów składniowych we wzorcu wyrażenia regularnego.
Metody
2CVVGTP5[PVCZ'ZEGRVKQP
5VTKPI FGUE 5VTKPI TGIGZ KPV KPFGZ
Tworzy nowy egzemplarz tej klasy.
5VTKPI IGVGUETKRVKQP
Zwraca opis błędu.
KPV IGV+PFGZ
Zwraca indeks wystąpienia błędu.
5VTKPI IGV/GUUCIG
Zwraca wielowierszowy komunikat o błędzie, zawierający jego
opis, indeks, wzorzec wyrażenia regularnego oraz informacje
na temat położenia miejsca wystąpienia błędu we wzorcu.
5VTKPI IGV2CVVGTP
Zwraca wzorzec wyrażenia regularnego, które zgłosiło
wyjątek.
Java (java.util.regex) 43
18. java.lang.CharSequence Interfejs
implementowany przez:
%JCT$WHHGT, 5VTKPI i 5VTKPI$WHHGT
Opis
Definiuje interfejs umożliwiający dostęp tylko do odczytu, dzięki
któremu wzorce wyrażeń regularnych można zastosować do se-
kwencji znaków.
Metody
EJCT EJCT#V
KPV KPFGMU
Zwraca znak znajdujący się w miejscu określonym przez
KPFGMU, przy czym indeks pierwszego znaku ma wartość 0.
KPV NGPIVJ
Zwraca liczbę znaków w sekwencji.
%JCT5GSWGPEG UWD5GSWGPEG
KPV RQECVGM KPV MQPKGE
Zwraca sekwencję zawierającą znak umieszczony w miejscu
o indeksie RQECVGM i kończącą się bezpośrednio przed zna-
kiem o indeksie MQPKGE.
5VTKPI VQ5VTKPI
Zwraca obiekt 5VTKPI, zawierający reprezentację danej sekwen-
cji.
44 Wyrażenia regularne. Leksykon kieszonkowy