Perl_Czarna_ksiega_perlbb.pdf

(323 KB) Pobierz
IDZ DO
PRZYK£ADOWY ROZDZIA£
SPIS TREŒCI
Perl. Czarna ksiêga
Autor: Steven Holzner
T³umaczenie: Tomasz ¯mijewski
ISBN: 83-7197-288-1
Tytu³ orygina³u:
Perl Core Language Little Black Book
Format: B5, stron: 416
KATALOG KSI¥¯EK
KATALOG ONLINE
ZAMÓW DRUKOWANY KATALOG
TWÓJ KOSZYK
DODAJ DO KOSZYKA
CENNIK I INFORMACJE
ZAMÓW INFORMACJE
O NOWOŒCIACH
ZAMÓW CENNIK
Ksi¹¿ka zawiera rzeczowe wprowadzenie do programowania w Perlu. Jeœli chcesz
dowiedzieæ siê, jak coœ zrobiæ w Perlu, tutaj znajdziesz odpowiedŸ.
Perl jest du¿ym i z³o¿onym produktem, a niniejsza ksi¹¿ka czyni ten jêzyk
przystêpnym. Jest to ksi¹¿ka wyj¹tkowa, gdy¿ mo¿na j¹ uznaæ za bardzo zwarty
podrêcznik Perla 5. Autor to doskona³y programista, który w swojej ksi¹¿ce umieœci³
blisko 400 dzia³aj¹cych przyk³adów, a tak¿e omówi³ oko³o 500 ró¿nych zagadnieñ.
Znajdziesz tu kompletny opis sk³adni Perla 5, jak równie¿ opis tworzenia internetowych
ksi¹¿ek odwiedzin. Nauczysz siê tworzyæ perlowe klasy i obiekty, u¿ywaæ pakietów
i modu³ów, ³¹czyæ Perla z pakietem Tk, czy choæby budowaæ aplikacje do prowadzenia
rozmów (chat). W ksi¹¿ce tej s¹ omówione praktyczne zagadnienia programowania
w Perlu: obs³uga cookies, kwestie bezpieczeñstwa w Sieci, usuwanie b³êdów,
wysy³anie ze skryptów CGI poczty elektronicznej, z³o¿one struktury danych --
znajdziesz tu po prostu wszystko.
CZYTELNIA
FRAGMENTY KSI¥¯EK ONLINE
Wydawnictwo Helion
ul. Chopina 6
44-100 Gliwice
tel. (32)230-98-63
e-mail: helion@helion.pl
O Autorze ................................................................................................................. 17
Wprowadzenie ......................................................................................................... 19
Zawartość tej ksią ki.................................................................................................................19
Co będzie nam potrzebne? ........................................................................................................22
Inne zasoby ...............................................................................................................................23
Część I
Składnia języka Perl................................................................................................ 25
W skrócie ..................................................................................................................................27
Zaczynamy od początku .....................................................................................................27
Zagadnienia...............................................................................................................................28
Uzyskanie i instalacja Perla ................................................................................................28
Zapisywanie skryptów Perla...............................................................................................29
Uwidacznianie Perla dla skryptów .....................................................................................30
Kod Perla: instrukcje i deklaracje.......................................................................................32
Uruchamianie skryptów Perla.............................................................................................33
Interaktywne uruchamianie skryptów Perla .......................................................................35
U ycie przełączników wiersza poleceń ..............................................................................36
U ycie przełącznika –w — ostrze enia ..............................................................................38
Obsługa wejściowych i wyjściowych danych tekstowych
przy pomocy standardowych uchwytów plików ................................................................39
Wyświetlanie danych tekstowych.......................................................................................39
Wyświetlanie numerów wierszy i nazw plików ze skryptami............................................40
Wielokrotne drukowanie tekstu ..........................................................................................40
Podstawowe formatowanie tekstu ......................................................................................41
Wyświetlanie tekstu niesformatowanego: otwierane dokumenty Perla .............................42
Komentowanie kodu...........................................................................................................42
Odczyt wprowadzanych danych .........................................................................................43
U ycie zmiennej domyślnej $_...........................................................................................43
Czyszczenie danych wejściowych ......................................................................................44
Unikanie natychmiastowego zamknięcia okna skryptu w Windows 95/98 i NT ...............45
Rozdział 1.
Co o Perlu trzeba wiedzieć?.................................................................................... 27
Rozdział 2.
Zmienne skalarne i listy .......................................................................................... 47
W skrócie ..................................................................................................................................47
Zmienne skalarne................................................................................................................47
Listy ....................................................................................................................................48
Zagadnienia...............................................................................................................................48
Czym jest zmienna skalarna?..............................................................................................48
Nazwy zmiennych skalarnych ............................................................................................49
Przypisywanie wartości skalarnych ....................................................................................50
Co to jest lvalue? ................................................................................................................50
U ycie liczb jako wartości skalarnych ...............................................................................50
U ycie wartości nieokreślonej: undef.................................................................................51
Deklarowanie stałej ............................................................................................................52
Obsługa w Perlu wartości logicznych.................................................................................52
Przekształcanie liczb ósemkowych, dziesiętnych i szesnastkowych..................................52
Zaokrąglanie liczb ..............................................................................................................53
U ycie w zmiennych skalarnych tekstów...........................................................................54
Stosowanie interpolacji w tekście.......................................................................................56
Skomplikowane interpolacje ..............................................................................................57
Obsługa cudzysłowów i samodzielnych słów ....................................................................58
Czym jest lista?...................................................................................................................59
Odwoływanie się do elementów listy przez indeks ............................................................60
Przypisywanie listy innej liście ..........................................................................................61
Odwzorowanie listy ............................................................................................................61
Łączenie listy w ciąg znaków .............................................................................................61
Przekształcanie tekstu w listę .............................................................................................62
Sortowanie list ....................................................................................................................62
Odwracanie listy .................................................................................................................63
Wybieranie elementów z listy ............................................................................................63
Jak rozumieć konteksty skalarny i listowy? .......................................................................64
Wymuszanie kontekstu skalarnego.....................................................................................64
Rozdział 3.
Tablice i asocjacje.................................................................................................... 67
W skrócie ..................................................................................................................................67
Tablice ................................................................................................................................67
Asocjacje.............................................................................................................................67
Typy ogólne ........................................................................................................................68
Zagadnienia...............................................................................................................................68
Tworzenie tablic .................................................................................................................68
U ycie tablic .......................................................................................................................70
Dokładanie elementów na koniec tablicy i ich usuwanie ...................................................70
Przesuwanie elementów tablicy..........................................................................................71
Określanie wielkości tablicy...............................................................................................72
Powiększanie i zmniejszanie tablic ....................................................................................72
Łączenie dwóch tablic ........................................................................................................73
Pobieranie warstw tablic.....................................................................................................73
Pętle na tablicach ................................................................................................................73
Wyświetlanie tablic ............................................................................................................75
Warstwy tablic ....................................................................................................................76
Odwracanie tablic ...............................................................................................................76
Sortowanie tablic ................................................................................................................77
Tworzenie asocjacji ............................................................................................................77
U ycie asocjacji ..................................................................................................................79
Dodawanie elementów do asocjacji....................................................................................79
Sprawdzanie, czy istnieje dany element asocjacji ..............................................................80
Usuwanie elementów asocjacji...........................................................................................80
Przetwarzanie asocjacji w pętli...........................................................................................81
Wyświetlanie asocjacji .......................................................................................................82
Sortowanie asocjacji ...........................................................................................................82
Łączenie dwóch asocjacji ...................................................................................................83
U ycie asocjacji i tablic w przypisaniach list .....................................................................83
Spis treści
U ycie typów ogólnych ......................................................................................................84
Porównywanie typów ogólnych i haseł tablicy symboli ....................................................85
3
Rozdział 4.
Operatory i priorytety............................................................................................. 87
W skrócie ..................................................................................................................................87
Priorytety operatorów .........................................................................................................88
Zagadnienia...............................................................................................................................89
Najwy szy priorytet: termy i lewostronne operatory list ...................................................89
Operator „strzałka” .............................................................................................................90
Inkrementacja i dekrementacja ...........................................................................................90
Potęgowanie........................................................................................................................91
Symboliczne operatory unarne ...........................................................................................91
Operatory wiązania .............................................................................................................92
Mno enie i dzielenie...........................................................................................................92
Dodawanie, odejmowanie i konkatenacja ..........................................................................93
Operatory przesunięć ..........................................................................................................93
Nazwane operatory unarne .................................................................................................94
U ycie operatorów testowania plików................................................................................94
Operatory porównania ........................................................................................................95
U ycie operatorów równości ..............................................................................................97
Iloczyn bitowy ....................................................................................................................98
Bitowa alternatywa .............................................................................................................98
Bitowa alternatywa wyłączająca.........................................................................................98
U ycie logicznej koniunkcji w stylu C ...............................................................................99
U ycie logicznej alternatywy w stylu C ...........................................................................100
Operator zakresu...............................................................................................................100
Operator wyboru...............................................................................................................101
Przypisania........................................................................................................................102
Przecinek jako operator ....................................................................................................102
U ycie prawostronnych operatorów list ...........................................................................103
Logiczna negacja ..............................................................................................................103
Logiczna koniunkcja.........................................................................................................103
Logiczna alternatywa........................................................................................................103
Logiczna alternatywa wykluczająca .................................................................................104
Rozdział 5.
Instrukcje warunkowe i pętle ............................................................................... 105
W skrócie ................................................................................................................................105
Instrukcje warunkowe.......................................................................................................105
Pętle ..................................................................................................................................106
Zagadnienia.............................................................................................................................107
Instrukcja if.......................................................................................................................107
Instrukcja unless ...............................................................................................................108
Pętla for.............................................................................................................................109
Pętla foreach .....................................................................................................................110
Pętla while ........................................................................................................................112
Pętla until ..........................................................................................................................113
U ycie if, unless, until i while do modyfikowania działania instrukcji............................113
Pętla do while ...................................................................................................................114
next — wymuszenie następnej iteracji .............................................................................114
last — zakończenie pętli ...................................................................................................115
redo — powtarzanie iteracji..............................................................................................116
Instrukcja switch...............................................................................................................116
U ycie goto.......................................................................................................................117
U ycie eval do uruchamiania kodu...................................................................................118
U ycie exit do zakończenia wykonywania programu ......................................................118
Instrukcja die ....................................................................................................................119
Rozdział 6.
Wyra enia regularne............................................................................................. 121
W skrócie ................................................................................................................................121
U ycie wyra eń regularnych ............................................................................................121
Zagadnienia.............................................................................................................................123
Wyra enia regularne .........................................................................................................123
Zwykłe znaki w wyra eniach regularnych .......................................................................124
Klasy znaków w wyra eniach regularnych ......................................................................126
Alternatywne wzorce ........................................................................................................127
Kwantyfikatory w wyra eniach regularnych....................................................................127
Asercje w wyra eniach regularnych .................................................................................128
Odwołania do poprzednich dopasowań ............................................................................129
Rozszerzenia wyra eń regularnych ..................................................................................130
Modyfikatory operatorów m// i s///...................................................................................130
Operator tr/// — translacja ................................................................................................131
U ycie modyfikatorów operatora tr/// ..............................................................................132
Dopasowywanie słów .......................................................................................................132
Dobieranie początku wiersza ............................................................................................133
Dobieranie końca wiersza.................................................................................................133
Badanie liczb ....................................................................................................................133
Badanie liter......................................................................................................................134
Odnajdowanie wielokrotnych dopasowań ........................................................................134
Pomijanie wielkości liter ..................................................................................................135
Wycinanie części ciągu.....................................................................................................135
Wywołania funkcji i wyra eń Perla w wyra eniach regularnych.....................................136
Dobranie n-tego dopasowania ..........................................................................................136
Ograniczanie apetytu kwantyfikatorów ............................................................................136
Usuwanie spacji wiodących i końcowych ........................................................................137
U ycie asercji do sprawdzania w przód i wstecz..............................................................137
Rozdział 7.
Procedury ............................................................................................................... 139
W skrócie ................................................................................................................................139
U ycie procedur................................................................................................................139
Zagadnienia.............................................................................................................................140
Deklarowanie procedur.....................................................................................................140
Prototypy...........................................................................................................................141
Definiowanie procedur .....................................................................................................142
Wywoływanie procedur....................................................................................................143
Odczytywanie parametrów procedury ..............................................................................143
Zmienna liczba parametrów .............................................................................................144
U ycie domyślnych wartości parametrów........................................................................144
Wartości zwracane przez procedury (funkcje) .................................................................145
U ycie my do określania zasięgu .....................................................................................146
ądanie leksykalnego ograniczenia zmiennych ...............................................................148
Local — zmienne tymczasowe .........................................................................................148
Zmienne trwałe (statyczne)...............................................................................................149
Rekurencyjne wywoływanie procedur .............................................................................150
Zagnie d anie procedur....................................................................................................150
Przekazywanie przez referencję .......................................................................................151
Przekazywanie pozycji z tablicy symboli.........................................................................152
U ycie wantarray do sprawdzenia kontekstu wyjściowego .............................................153
Funkcje wywoływane .......................................................................................................153
Zgłoś jeśli naruszono regulamin