Perl_cwiczenia_cwperl.pdf

(214 KB) Pobierz
IDZ DO
PRZYK£ADOWY ROZDZIA£
SPIS TRE CI
KATALOG KSI¥¯EK
KATALOG ONLINE
ZAMÓW DRUKOWANY KATALOG
Perl. Æwiczenia
praktyczne
Autor: Krzysztof Juszkiewicz
ISBN: 83-7197-946-0
Format: B5, stron: 132
TWÓJ KOSZYK
DODAJ DO KOSZYKA
Je li chcesz rozpocz¹æ przygodê z programowaniem — zacznij naukê od Perla. Po kilku
godzinach pracy przekonasz siê, ¿e dokona³e najlepszego wyboru. Perl posiada wielk¹
zaletê, której brakuje konkurencyjnym narzêdziom: nie znaj¹c wszystkich jego
niuansów mo¿esz pisaæ dzia³aj¹ce aplikacje.
Larry Wall stworzy³ Perla dla osób, które s¹ niecierpliwe (programy w Perlu pisze siê
bardzo szybko), leniwe (kod programów jest zwiêz³y, a ich tworzenie u³atwia ogromna
liczba gotowych modu³ów) i chc¹ byæ dumne z tego, co robi¹ (sam przekonasz siê, jak
wiele satysfakcji dostarczy Ci programowanie w Perlu).
Ksi¹¿ka przeznaczona jest dla pocz¹tkuj¹cych programistów. Dowiesz siê z niej jak
zainstalowaæ Perla, a nastêpnie, krok po kroku, æwiczenie po æwiczeniu, zag³êbisz siê
w jego wiat.
Poznasz:
• Fundamenty jêzyka: zmienne, instrukcje i referencje
• Wyra¿enia regularne, umo¿liwiaj¹ce szybkie przeszukiwanie tekstów i podmianê
fragmentów
• Sposoby korzystania z plików
• Zasady pisania skryptów CGI
• Wysy³anie e-maili za pomoc¹ Perla
• £¹czenie Perla z bazami danych
CENNIK I INFORMACJE
ZAMÓW INFORMACJE
O NOWO CIACH
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
Spis treści
Wstęp.............................................................................................................................................................. 5
Rozdział 1.
Instalacja ...................................................................................................................................................... 7
Archiwum języka Perl — CPAN .................................................................................................8
ActivePerl...................................................................................................................................11
Uruchamianie skryptów .............................................................................................................16
Błędy podczas uruchamiania skryptów ...............................................................................18
Polskie znaki ..............................................................................................................................22
Rozdział 2. Zmienne.......................................................................................................................................................25
Zmienne skalarne .......................................................................................................................25
Tablice ........................................................................................................................................30
Tablice asocjacyjne ....................................................................................................................36
Rozdział 3. Instrukcje warunkowe i pętle.......................................................................................................... 41
Rozdział 4. Funkcje ........................................................................................................................................................ 47
Rozdział 5. Referencje ................................................................................................................................................ 53
Referencje skalarne ....................................................................................................................53
Referencje tablicowe ..................................................................................................................55
Referencje asocjacyjne ...............................................................................................................57
Zmienne wielowymiarowe.........................................................................................................58
Rozdział 6. Debugger ................................................................................................................................................... 63
Wykonywanie krokowe..............................................................................................................64
Czujki .........................................................................................................................................66
Wartości zmiennych...................................................................................................................66
Rozdział 7.
Wyra enia regularne........................................................................................................................... 69
Sprawdzanie ...............................................................................................................................69
Zamiana ......................................................................................................................................78
Dzielenie.....................................................................................................................................80
Transliteracja ..............................................................................................................................81
4
Perl. Ćwiczenia
Rozdział 8. Obsługa plików....................................................................................................................................... 85
Sprawdzanie i zmiana atrybutów ...............................................................................................85
Odczyt i zapis .............................................................................................................................91
Ograniczanie dostępu .................................................................................................................96
Pliki binarne ...............................................................................................................................98
Rozdział 9. WWW........................................................................................................................................................... 101
Moduł CGI ...............................................................................................................................102
Rozdział 10. Poczta elektroniczna .......................................................................................................................... 113
Rozdział 11. Inne usługi sieciowe.......................................................................................................................... 121
Rozdział 12. Bazy danych............................................................................................................................................. 127
7.
Wyra enia regularne
Rozdział
Język Perl jest dobrze przystosowany do przetwarzania tekstów. Jego główną zaletą wią ącą
się z tym zagadnieniem są wyra enia regularne. Ich istotą jest tworzenie wzorców opartych
o ró ne symbole. Taki wzorzec jest dopasowywany do testowanego tekstu i w ten sposób
mo na sprawdzać, czy dany tekst zawiera określone litery, znaki, grupy liter, słowa. Opie-
rając się na wykonanym dopasowaniu (lub jego braku) mo na dodatkowo podmienić pa-
sującą frazę na inną.
Sprawdzanie
Ćwiczenie 7.1.
Sprawdź, czy w zmiennej region znajduje się słowo karp.
Rozwiązanie
WUTDKPRGTN
TGIKQP RQFMCTRCEMK
KH TGIKQP ` MCTR ]
RTKPV ,GUV MCTR>P
_
Wartość zmiennej
TGIKQP
ustawiamy na
RQFMCTRCEMK
. W tym słowie znajduje się fraza
MCTR
, więc efekt sprawdzenia będzie pozytywny i na ekranie powinniśmy zobaczyć napis
wygenerowany przez funkcję
RTKPV
.
Do obsługi wyra eń regularnych u ywamy operatora składającego się ze znaku równości
i tyldy (
`
). W niektórych edytorach mogą wystąpić problemy z wpisaniem znaku tyldy
(
`
), gdy po naciśnięciu odpowiedniego klawisza nie pojawia się on na ekranie. Nale y
wówczas oprócz właściwego klawisza u yć spacji.
70
Perl. Ćwiczenia
Po operatorze wyra enia regularnego piszemy samo wyra enie ujęte w ukośniki (
). Wpisa-
nie ciągu liter (tak jak w tym przypadku) spowoduje sprawdzenie, czy w danej zmiennej
zawierającej ciąg znaków (
RQFMCTRCEMK
) występuje zadany podciąg (
MCTR
).
Ćwiczenie 7.2.
Zbadaj, czy w zmiennej region nie ma słowa karp.
Rozwiązanie
WUTDKPRGTN
KH TGIKQP ` MCTR ]
RTKPV $TCM MCTR>P
_
KH TGIKQP ` MCTR ]
RTKPV $TCM MCTR>P
_
WPNGUU TGIKQP ` MCTR ]
RTKPV $TCM MCTR>P
_
W tym przypadku przedstawiono trzy alternatywne rozwiązania. Są one równowa ne.
W pierwszym wierszu widzimy, e zastosowano operator
`
. Sprawdzamy zatem, czy
gdziekolwiek w zmiennej
TGIKQP
nie ma układu liter
MCTR
. Ten sam efekt uzyskamy sto-
sując wykrzyknik przed warunkiem (warunek drugi) oraz dzięki u yciu warunku nega-
tywnego
WPNGUU
(jeśli nie).
Ćwiczenie 7.3.
Prześledź, czy słowo karp znajduje się w zmiennej domyślnej.
Rozwiązanie
WUTDKPRGTN
A RQFMCTRCEMK
KH MCTR ]
RTKPV ,GUV MCTR>P
_
Zmienna domyślna to taka, której nazwa składa się jedynie z podkreślenia (
A
). Jeśli w takiej
zmiennej umieścimy nasz tekst do sprawdzenia (
RQFMCTRCEMK
), nie trzeba stosować ope-
ratora wyra enia regularnego (
`
), wystarczy jedynie samo wyra enie w ukośnikach.
Ćwiczenie 7.4.
Przeanalizuj, czy odpowiedź zawarta w zmiennej odp jest twierdząca.
Zgłoś jeśli naruszono regulamin