Darmowa dostawa od 150,00 zł
Wyrażenia regularne
Promocja Okazja

Wyrażenia regularne

  • Rok wydania: 2001 Oprawa: miękka ISBN: 8371973519 Ilość stron: 320 Format: 14,5 x 20,5 cm
Rozmiar

89,10 zł

brutto / 1szt.
Najniższa cena z 30 dni przed obniżką: 99,00 zł / szt.-10%
Cena regularna: 99,00 zł / szt.-10%
Cena katalogowa:
Możesz kupić za pkt.
z
Produkt dostępny w bardzo dużej ilości
Skontaktuj się z obsługą sklepu, aby oszacować czas przygotowania tego produktu do wysyłki.
Produkt dostępny w bardzo dużej ilości
Wysyłka
14 dni na łatwy zwrot
Bezpieczne zakupy
Odroczone płatności. Kup teraz, zapłać później, jeżeli nie zwrócisz
Kup teraz, zapłać później - 4 kroki
Przy wyborze formy płatności, wybierz PayPo.PayPo - kup teraz, zapłać za 30 dni
PayPo opłaci twój rachunek w sklepie.
Na stronie PayPo sprawdź swoje dane i podaj pesel.
Po otrzymaniu zakupów decydujesz co ci pasuje, a co nie. Możesz zwrócić część albo całość zamówienia - wtedy zmniejszy się też kwota do zapłaty PayPo.
W ciągu 30 dni od zakupu płacisz PayPo za swoje zakupy bez żadnych dodatkowych kosztów. Jeśli chcesz, rozkładasz swoją płatność na raty.
Po zakupie otrzymasz pkt.

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

Spis treści

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)
  • Metaznaki programu egrep (23)
    • 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)
  • Typowe metaznaki (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)
    • Zasada 2. Niektóre metaznaki są "zachłanne" (103)
  • 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)

 
 
Marka
Autor
Jeffrey E. F. Friedl
ISBN
8371973519
Potrzebujesz pomocy? Masz pytania?Zadaj pytanie a my odpowiemy niezwłocznie, najciekawsze pytania i odpowiedzi publikując dla innych.
Zapytaj o produkt
Jeżeli powyższy opis jest dla Ciebie niewystarczający, prześlij nam swoje pytanie odnośnie tego produktu. Postaramy się odpowiedzieć tak szybko jak tylko będzie to możliwe. Dane są przetwarzane zgodnie z polityką prywatności. Przesyłając je, akceptujesz jej postanowienia.
Napisz swoją opinię
Twoja ocena:
5/5
Dodaj własne zdjęcie produktu:
pixel