Katalog książek

Wydawnictwo Helion

Helion SA
ul. Kościuszki 1c
44-100 Gliwice
tel. (32) 230-98-63




© Helion 1991-2013

Lauret zaufanych opinii

Wyrażenia regularne

Autor: Jeffrey E. F. Friedl

Wyrażenia regularne
Ocena:
   5.5/6  Opinie  (21)
Stron: 320
Ksiazka drukowana Druk (oprawa: miękka)
Cena promocyjna:
Oszczędzasz: 11.00 zł
44,00 zł

Druk na żądanie
Wyrażenia regularne to niezwykle skuteczny mechanizm przetwarzania tekstów i innych danych. Ci, którzy do tej pory nie zetknęli się z tym pojęciem, odkryją dzięki tej książce nowe, potężne narzędzia, pozwalające w pełni zapanować nad danymi. Prezentowana tu wiedza jest tak szczegółowa i obszerna, że nawet komputerowi weterani znajdą coś nowego dla siebie.

Umiejętne stosowanie wyrażeń regularnych pozwala radykalnie uprościć przetwarzanie wszelkiego rodzaju informacji, poczynając od poczty elektronicznej, poprzez pliki dzienników aż do dokumentów tekstowych. Mechanizm ten odgrywa niezwykle ważną rolę w programowaniu skryptów CGI, często przetwarzających rozmaite dane tekstowe.

Wyrażenia regularne nie funkcjonują samodzielnie. Oprócz doskonale wszystkim znanego programu grep, wchodzą one w skład takich narzędzi programisty, jak:

  • translatory języków skryptowych (m.in. Perl, Tcl, awk i Python),
  • edytory tekstów (Emacs, vi, Nisus Writer i inne),
  • środowiska programowania (m.in. Delphi i Visual C++)
  • inne wyspecjalizowane narzędzia (np. lex, Expert czy sed).
Korzystanie z wyrażeń regularnych wymaga nie tylko wiedzy teoretycznej, ale również znajomości pewnych niuansów. Jeffrey Friedl konsekwentnie prowadzi nas przez kolejne etapy tworzenia konstrukcji, które dokładnie zrealizują wszystkie postawione przed nimi zadania.

Wyrażenia regularne nie istnieją oczywiście same dla siebie. Na stronach książki przedstawiono liczne przykłady wykorzystujących je narzędzi, a także wiele praktycznych przykładów. Szczególnie dużo uwagi poświęcono językowi Perl, wyposażonemu w bogaty zestaw funkcji przeznaczonych specjalnie do obsługi wyrażeń regularnych.

Zawarte w tej książce porady pozwolą Czytelnikom uniknąć wszelkich pułapek i skutecznie wykorzystać możliwości wyrażeń regularnych.

"Książka była dla mnie tyleż przyjemna, co pouczająca, nawet w kwestiach związanych z Perlem"
Tom Christiansen, współautor książki Perl. Programowanie

Przedmowa (9)
1. Wprowadzenie do wyrażeń regularnych (17)
  • Rozwiązywanie prawdziwych problemów (18)
  • Wyrażenia regularne jako język (19)
    • Analogia do nazw plików (19)
    • Analogia do języka (20)
  • Myślenie wyrażeniami regularnymi (21)
    • Przeszukiwanie plików tekstowych - egrep (22)
    • Początek i koniec wiersza (23)
    • Klasy znaków (23)
    • Kropka, czyli dowolny znak (26)
    • Alternacja (27)
    • Granice słów (28)
    • W skrócie (29)
    • Elementy opcjonalne (30)
    • Inne kwantyfikatory - powtarzanie (31)
    • Ignorowanie wielkości znaków (33)
    • Nawiasy i odwołania wsteczne (33)
    • Szybki unik (35)
  • Ponad podstawy (35)
    • Różnorodność językowa (35)
    • Cel tworzenia wyrażenia regularnego (35)
    • Jeszcze kilka przykładów (36)
    • Terminologia wyrażeń regularnych (38)
    • Podwyższanie kwalifikacji (40)
    • Podsumowanie (42)
  • Uwagi osobiste (43)
2. Przykłady wyrażeń regularnych (45)
  • O przykładach (45)
    • Perl - krótkie wprowadzenie (46)
  • Wyszukiwanie tekstu za pomocą wyrażeń regularnych (48)
    • Przykład bliższy rzeczywistości (49)
    • Skutki uboczne udanego dopasowania (50)
    • Przeplatanie wyrażeń regularnych (53)
    • Chwila odpoczynku (56)
  • Modyfikowanie znalezionego tekstu (57)
    • Edycja zautomatyzowana (60)
    • Proste przetwarzanie wiadomości e-mailowych (61)
    • I znów powtarzające się słowa (66)
3. Przegląd funkcji i odmian wyrażeń regularnych (71)
  • Spacerkiem po krainie wyrażeń regularnych (72)
    • Świat według grepa (72)
    • Czas wszystko zmienia (73)
  • Najkrótszy przegląd (74)
    • POSIX (76)
  • "Otoczka" wyrażeń regularnych (77)
    • Identyfikacja wyrażenia regularnego (78)
    • Operacje na dopasowanym tekście (78)
    • Inne przykłady (79)
    • "Otoczka" wyrażeń regularnych - podsumowanie (81)
  • Silniki a błyszczący lakier (82)
    • Lakier (82)
    • Silnik i kierowca (82)
    • Skróty znakowe (83)
    • Łańcuchy jako wyrażenia regularne (86)
    • Skrótowy zapis klas, kropka i klasy znaków (88)
    • Zakotwiczanie (92)
    • Grupowanie i wydobywanie informacji (94)
    • Kwantyfikatory (94)
    • Alternacja (95)
  • Przewodnik po dalszych rozdziałach (95)
    • Informacje specyficzne dla konkretnego narzędzia (96)
4. Mechanika przetwarzania wyrażeń (97)
  • Przekręcamy klucz w stacyjce (97)
    • Dwa typy silników (97)
    • Nowe standardy (98)
    • Typy mechanizmów wyrażeń regularnych (98)
    • Kilka dodatkowych pytań (100)
  • Podstawy dopasowywania (100)
    • O przykładach (100)
    • Zasada 1. Najwcześniejsze dopasowanie wygrywa (101)
    • Skrzynia biegów (102)
    • Części silnika (102)
    • Sterowanie wyrażeniem a sterowanie tekstem (108)
      • Mechanizm NFA - sterowanie wyrażeniem (108)
      • Mechanizm DFA - sterowanie tekstem (109)
      • Wyjaśnienie "zagadki istnienia" (110)
    • Wycofywanie (111)
      • "Krucha" analogia (111)
      • Dwie istotne sprawy dotyczące wycofywania (112)
      • Zachowane stany (113)
      • Wycofywanie a zachłanność (114)
    • Więcej o zachłanności (117)
      • Problemy z zachłannością (117)
      • "Cudzysłowy" wieloznakowe (118)
      • Lenistwo? (118)
      • Zachłanność zawsze sprzyja dopasowaniu (119)
      • Czy alternacja jest zachłanna? (120)
      • Sposoby wykorzystania alternacji niezachłannej (121)
      • Alternatywa zachłanna z perspektywy (123)
      • Klasy znaków a alternacja (123)
    • NFA, DFA i POSIX (123)
      • "Najdłuższe najbardziej z lewej" (123)
      • POSIX a zasada "najdłuższe najbardziej z lewej" (125)
      • Szybkość i wydajność (126)
      • Porównanie mechanizmów DFA i NFA (126)
    • Techniki tworzenia wyrażeń regularnych (128)
      • O czym należy pamiętać (129)
      • Warto być konkretnym (130)
      • Trudności i niemożliwości (133)
      • Uwaga na niepożądane dopasowania (134)
      • Dopasowanie ograniczonego tekstu (136)
      • Wiedza o przetwarzanych danych (139)
      • Dalsze przykłady zachłanności (139)
    • Podsumowanie (142)
      • Podsumowanie mechaniki dopasowania (142)
      • Praktyczne efekty działania mechanizmów dopasowania wzorca (143)
    5. Dopracowywanie wyrażeń regularnych (145)
    • Przykład otrzeźwiający (146)
      • Prosta zmiana - najlepszą chorągiew posyłamy przodem (146)
      • Krok dalej: znalezienie źródła zachłanności (147)
      • Twarda rzeczywistość (149)
    • O wycofywaniu ogólnie (151)
      • POSIX NFA - więcej pracy (152)
      • Gdy nie ma dopasowania (152)
      • Dążenie do precyzji (153)
      • Alternacja może kosztować (154)
      • Silne prowadzenie (155)
      • Wpływ nawiasów okrągłych (155)
    • Optymalizacja wewnętrzna (159)
      • Rozpoznawanie pierwszego znaku (159)
      • Sprawdzanie obecności stałego fragmentu tekstu (160)
      • Proste powtarzanie (160)
      • Niepotrzebne małe kwantyfikatory (162)
      • Rozpoznanie długości (162)
      • Rozpoznanie dopasowania (162)
      • Rozpoznanie potrzeb (162)
      • Zakotwiczenia łańcucha lub wiersza (162)
      • Buforowanie postaci skompilowanej (163)
    • Identyfikacja mechanizmu (165)
      • NFA czy DFA? (165)
      • NFA tradycyjny czy posiksowy? (166)
    • Rozwijanie pętli (166)
      • Metoda pierwsza: tworzenie wyrażenia na podstawie doświadczenia (167)
      • Faktyczny wzór na "rozwinięcie pętli" (168)
      • Metoda druga: pogląd z góry (171)
      • Metoda trzecia: nazwa hosta internetowego w cudzysłowach (171)
      • Obserwacje (172)
    • Rozwijanie komentarzy w C (173)
      • Wyrażeniowy zawrót głowy (173)
      • Sposób naiwny (173)
      • Rozwijanie pętli w języku C (176)
    • Swobodne wyrażenie (177)
      • Dopasowanie wspomagane (177)
      • Czy można jeszcze szybciej? (178)
      • Opakowanie (180)
    • Nic nie zastąpi myślenia (181)
      • Różne oblicza optymalizacji (181)
    6. O konkretnych narzędziach (185)
    • Pytania, które powinny się pojawić (185)
      • Pozornie prosty grep... (185)
      • W tym rozdziale (187)
    • Język awk (187)
      • Różnice pomiędzy odmianami wyrażeń regularnych w awku (188)
      • Funkcje i operatory wyrażeń regularnych w awku (190)
    • Tcl (192)
      • Argumenty wyrażeń regularnych (192)
      • Korzystanie z wyrażeń regularnych Tcl-a (193)
      • Optymalizacja wyrażeń w języku Tcl (195)
    • GNU Emacs (195)
      • Łańcuchy Emacsa jako wyrażenia regularne (196)
      • Emacsowa odmiana wyrażeń regularnych (197)
      • Wyniki dopasowania w Emacsie (199)
      • Pomiar wydajności w Emacsie (200)
      • Optymalizacja wyrażeń regularnych w Emacsie (201)
    7. Wyrażenia regularne Perla (203)
    • Metoda Perla (204)
      • Wyrażenia regularne jako składnik języka (205)
      • Największa siła Perla (206)
      • Największa słabość Perla (207)
      • Perl a problem jajka i kury (207)
      • Przykład wprowadzający: analiza tekstu w formacie CSV (208)
      • Wyrażenia regularne a metoda Perla (210)
      • Perl bez tajemnic (211)
    • "Perlizmy" związane z wyrażeniami regularnymi (212)
      • Kontekst wyrażenia regularnego (213)
      • Zasięg dynamiczny a wynik dopasowania (214)
      • Zmienne specjalne po dopasowaniu (219)
      • "Przetwarzanie cudzysłowowe" i interpolacja zmiennych (221)
    • Perlowa odmiana wyrażeń regularnych (226)
      • Kwantyfikatory zachłanne i leniwe (226)
      • Grupowanie (228)
      • Punkty zakotwiczenia łańcucha (233)
      • Zakotwiczenie poprzedniego dopasowania (237)
      • Punkty zakotwiczenia słów (241)
      • Wygodne skróty i inne sposoby notacji (242)
      • Klasy znaków (244)
      • Prawdziwe kłamstwa, czyli modyfikacja z użyciem symbolu \Q i znaków pokrewnych (246)
    • Operator dopasowania (247)
      • Ograniczniki argumentu dopasowania (247)
      • Modyfikatory dopasowania (249)
      • Określanie argumentu docelowego (250)
      • Inne efekty uboczne operatora dopasowania (251)
      • Wartość zwracana przez operator dopasowania (252)
      • Czynniki zewnętrzne wpływające na operator dopasowania (254)
    • Operator podstawiania (255)
      • Argument podstawienia (255)
      • Modyfikator /e (256)
      • Kontekst i wartość zwracana (258)
      • Użycie modyfikatora /g w wyrażeniu, które może dopasować "nic" (258)
    • Operator split (259)
      • Podstawowe działanie operatora split (259)
      • Zaawansowane działanie operatora split (260)
      • Zaawansowany argument dopasowania w split (261)
      • Operator split w kontekście skalarnym (263)
      • Argument dopasowania operatora split a nawiasy przechwytujące (263)
    • Aspekty wydajności (264)
      • "Jest na to wiele sposobów" (265)
      • Kompilacja wyrażenia, modyfikator /o i wydajność (266)
      • Nietowarzyska zmienna $& i spółka (271)
      • Spadek wydajności wywołany modyfikatorem /i (277)
      • Aspekty wydajności związane z podstawianiem (279)
      • Testowanie (281)
      • Usuwanie błędów wyrażenia regularnego (282)
      • Funkcja study (284)
    • Składamy wszystkie klocki (286)
      • Usuwanie końcowych i początkowych białych znaków (287)
      • Dodawanie przecinków do liczb (288)
      • Usuwanie komentarzy z kodu w języku C (288)
      • Dopasowanie adresu poczty elektronicznej (289)
      • Kilka słów na koniec (299)
      • Uwagi na temat Perla4 (300)
    A Informacje dostępne w sieci (303)
    • Informacje ogólne (303)
      • Rzemiosło wyrażeń regularnych (303)
      • O'Reilly & Associates (303)
      • Wirtualna biblioteka oprogramowania OAK (304)
      • Archiwum GNU (304)
      • Yahoo! (304)
    • Inne adresy (304)
      • Awk (304)
      • Pakiety biblioteczne dla języka C (304)
      • Klasa wyrażeń regularnych Javy (304)
      • Egrep (305)
      • Emacs (305)
      • Perl (305)
      • Python (305)
      • Tcl (305)
    B Program do obsługi adresów e-mail (307)
    Spis tabel (311)
    O Autorze (313)
    Skorowidz (315)
Najczęściej kupowane razem:
Wyrażenia regularne plus Java. Efektywne programowanie. Wydanie II plus JavaScript i jQuery. Nieoficjalny podręcznik
Cena zestawu: 164.05 zł 193.00 zł
Oszczędzasz: 28.95 zł (15%)
Dodaj do koszyka
zestaw0 Wyrażenia regularne
Osoby, które kupowały książkę, często kupowały też:
6
(13)
5
(5)
4
(2)
3
(0)
2
(0)
1
(1)

Liczba ocen: 21

Średnia ocena
czytelników

  


okladka
  Ocena : 6 

Dawno nie czytałem takiej książki informatycznej, która by mnie wciągnęła jak ta. Bez siadania do komputera nauczyłem się mnóstwa rzeczy :)
  Ocena : 6 

Doskonała pozycja, jedyna na polskim rynku a co do błędów to cieszę się, że nie została wydana przez edition2000, bo po pierwsze nikt nie wydałby erraty a po drugie ilość błędów byłaby liczona w setkach. Jak na tak niełatwy tekst jest nieźle.
  Ocena : 6 

Klasa sama w sobie. Obowiązkowo, jeśli masz do czynienia z wyrażeniami regularnymi.
  Ocena : 6 

Obowiązkowo na biurku programisty Perla, CGI...
  Ocena : 6 

  Ocena : 6 

Oceną proszę się nie sugerować, bo jestem dopiero na 26 stronie, wiec mogę powiedzieć tylko tyle, że jak dotąd mi się podoba. Zauważyć jednak muszę, że tak dużej ilości literówek dawno już w książce nie spotkałem. Czy tak trudno jest dać materiał do przeczytania jakiejś osobie, która nad nim nie pracowała, żeby poprawiła literówki? Najlepiej puścić książkę przez 3 takie osoby, a gwarantuję, że liczba błędów znacznie spadnie.
  Ocena : 6 

Znam oryginał tej książki - korzystałem z niego często. To bezcenna pomoc w tworzeniu wyrażeń regularnych (używam ich w Perlu i PHP). Kupiłem polskie wydanie i nie zawiodłem się. Doskonałe tłumaczenie Pana Podstawczyńskiego, który był w stanie ubrać we właściwe słowa wszelkie subtelności tego trudnego przecież zagadnienia spowodowało, że amerykańskie wydanie książki poszło "na półkę" a na biurku leży teraz polskie. Słowa uznania należą się też Helionowi za to, że książka nie jest gorsza (a IMHO jest nawet lepsza) od oryginału.
  Ocena : 6 

  Ocena : 6 

Super książka do wyrażeni regularnych. Niedawno rozpocząłem swoją przygodę z regularkami i muszę przyznać iż jest to znakomite narzędzie do przetwarzania tekstów, polecam każdemu kto pracuje z php lub jakim kolwiek innym językiem programowania!!!
  Ocena : 6 

To idealny przykład książki, której autor dosłownie wprowadza czytelnika w swoisty trans. Jedna z niewielu pozycji, gdzie rozum rzeczywiście potrafi przestawić się o 180 stopni i pojmować fakty tak jak należy (wg. intencji autora). Wyrażenia regularne opisane zostały tutaj "od deski do deski", zaznaczając przy każdej problematyce istotne punkty, których utrwalenie, to kwestia odrobiny chęci i krótkiego czasu. Mimo nagłówka książki podkreślającego język Perl, aspekty programistyczne przedstawione zostały w sposób uniwersalny - duży nacisk na wszechstronność. Z czystym sumieniem polecam ta książkę zarówno amatorom wyrażeń regularnych jak i zawodowcom, którym na pewno przyda się "sucha kapsułka" trafnej wiedzy.
  Ocena : 6 

Doskonała książka. Bardzo dobre tłumaczenie[1]. Niestety, korekta się nie spisała (więcej niż pięciu błędów po prostu nie chce się wpisywać do "erraty", zdarzają się i w przytaczanym kodzie). Mimo to warta każdej wydanej na nią złotówki. Wyrażenia regularne od podstaw do wyczerpania tematu, podane w przystępny sposób, ale bez obniżania poziomu. Lekka, jasna polszczyzna, ze zgrabnie przełożonymi przykładami. Obowiązkowa pozycja dla zajmujących się przetwarzaniem tekstów, choć nie tylko. [1] choć nieco zdezorientowało mnie "przejęcie przez Perl operatora podstawiania z sed". Dopiero po chwili zorientowałem się, że nie chodzi o przypisanie (=), a o zastępowanie (s///).
  Ocena : 6 

Ta książka to wyśmienity kawałek tekstu, który pomaga (naprawdę!) zrozumieć zawiłości regexpa. Poza tym przetłumaczona jest świetnie (lekko i po polsku), przez co wraca się do niej dużo chętniej niż do oryginału.
  Ocena : 6 

Książka jest doskonała: dotyczy to zarówno oryginału jak i doskonałego tłumaczenia. Zdecydowanie polecam!
  Ocena : 5 

Książka w prosty, jednak nie pomijający istotnych szczegółów, sposób uczy posługiwania się wyrażeniami regularnymi. Szkoda, że nie można oceniać tłumaczenia bo postawiłbym 6. Adam Podstawczyński doskonale przełożył wszelkie przykłady na grunt naszego języka. Helionowi życzę więcej tak kompetentnych i kreatywnych tłumaczy oraz tak udanych książek.
  Ocena : 5 

Kupiłem ją w czasie, kiedy w realizowanych projektach zacząłem się natykać na potrzebę złożonego przetwarzania tekstu. Miałem wtedy mgliste pojecie, że istnieje cos takiego jak 'wyrażenia regularne' i to podobno pomaga. To mgliste pojecie oczywiście okazało się bardzo powierzchowne, a książka leży obecnie na stale pod ręka, bo się nadzwyczaj często przydaje w codziennej pracy programistycznej. Polecam.
  Ocena : 5 

Moim zdaniem książka bardzo dobrze tłumaczy zasadę działania wyrażeń a co za tym idzie jak tworzyć szybko działające wyrażenia, działające zawsze tak jak chcemy.
  Ocena : 5 

Wyrażeń używam od czasu do czasu. Głównie w grep. Niemniej kilku pomysłów od dłuższego czasu nie mogłem przegryźć. Zakup był nie tylko wart ceny, ale i czasu na czytanie. Niby znam angielski, ale podanie tego samego po polsku znacznie ułatwiło zadanie. Polecam każdemu, kto chciałby się nauczyć ich stosować. A warto. Wreszcie nie straszą mnie zaklęcia używane w funkcjach php przeszukujących wg regexp czy podstawiających wyszukane ciągi. A jak dla mnie to i sięgam czasem, żeby poczytać coś tak po prostu do poduszki. Bo język książki i na to pozwala.
  Ocena : 5 

Doskonała pozycja do usystematyzowania wiedzy o RegExp. Nie dałem maksymalnej oceny tylko dla tego ze już jest wypuszczona 3 edycja tej książki w j. angielskim i to jej się należy maksymalna ocena... ponieważ wersja pierwsza jest trochę uboższa.
  Ocena : 4 

Książka, mimo z lekka nierównego poziomu, bogata i ciekawa. Widać szerokie horyzonty tłumacza i duży wysiłek w lokalizacji przykładów. Może czasami zbyt duży. I ten skład. Troszeczkę za szeroki łam. Zbyt rozbiegane kroje i style. Narzędzia i metody stosowane w O'REILLY byłyby godne uwagi.<P>
  Ocena : 4 

Temat odkrywam późno, ale natykam sie na niego coraz częściej: ostatnio w PTS-DOS-ie 2000; reg. exp. ma zaimplementowane nawet parokilobajtowe FIND, mimo zewnętrznej kompatybilności z DOS-em 6.22... A co do zakupu tutaj: seria, powiedziałbym, nobliwa, lecz wobec sygnalizowanych błędów byłoby to jednak kupowanie w ciemno. Ja po prostu i zwyczajnie chciałbym przejrzec kilka stron -- czy to takie dziwne? Więc mimo zainteresowania tematem, wybiorę się do normalnej księgarni -- ogólnikowa recencja z okładki mi nie wystarcza.
  Ocena : 1 

Przed przeczytaniem wydawało mi się, że znam i stosuje wyrażenia regularne. Okazało się że widziałem tylko czubek góry lodowej. Książka przedstawia w sposób prosty narzędzia o zadziwiającej mocy.