Randal L. Schwartz is a two-decade veteran of the software industry. He is skilled in software design, system administration, security, technical writing, and training. Randal has coauthored the "must-have" standards: Programming Perl, Learning Perl, Learning Perl for Win32 Systems, and Effective Perl Learning, and is a regular columnist for WebTechniques, PerformanceComputing, SysAdmin, and Linux magazines.
He is also a frequent contributor to the Perl newsgroups, and has moderated comp.lang.perl.announce since its inception. His offbeat humor and technical mastery have reached legendary proportions worldwide (but he probably started some of those legends himself). Randal's desire to give back to the Perl community inspired him to help create and provide initial funding for The Perl Institute. He is also a founding board member of the Perl Mongers (perl.org), the worldwide Perl grassroots advocacy organization. Since 1985, Randal has owned and operated Stonehenge Consulting Services, Inc. Randal can be reached for comment at merlyn@stonehenge.com or (503) 777-0095, and welcomes questions on Perl and other related topics.
Tom Phoenix has been working in the field of education since 1982. After more than thirteen years of dissections, explosions, work with interesting animals, and high-voltage sparks during his work at a science museum, he started teaching Perl classes for Stonehenge Consulting Services, where he's worked since 1996. Since then, he has traveled to many interesting locations, so you might see him soon at a Perl Mongers' meeting. When he has time, he answers questions on Usenet's comp.lang.perl.misc and comp.lang.perl.moderated newsgroups, and contributes to the development and usefulness of Perl. Besides his work with Perl, Perl hackers, and related topics, Tom spends his time on amateur cryptography and speaking Esperanto. His home is in Portland, Oregon.
Vorwort; Typografische Konventionen; Verwendung der Codebeispiele; Die Geschichte dieses Buchs; Veränderungen in dieser Auflage; Danksagungen; Chapter 1: Einleitung; 1.1 Fragen und Antworten; 1.2 Was bedeutet »Perl«?; 1.3 Wo kann ich Perl bekommen?; 1.4 Wie schreibe ich ein Perl-Programm?; 1.5 Eine Perl-Blitztour; 1.6 Übungen; Chapter 2: Skalare Daten; 2.1 Zahlen; 2.2 Strings; 2.3 Eingebaute Warnungen; 2.4 Skalare Variablen; 2.5 Ausgaben mit print; 2.6 Kontrollstrukturen mit if; 2.7 Auf Benutzereingaben reagieren; 2.8 Der chomp-Operator; 2.9 Kontrollstrukturen mit while; 2.10 Der Wert undef; 2.11 Die Funktion defined; 2.12 Übungen; Chapter 3: Listen und Arrays; 3.1 Zugriff auf Arrayelemente; 3.2 Besondere Arrayindizes; 3.3 Listenliterale; 3.4 Listenzuweisung; 3.5 Interpolation von Arrays in Strings; 3.6 Kontrollstrukturen mit foreach; 3.7 Die beliebteste Standardvariable in Perl: $_; 3.8 Skalarer Kontext und Listenkontext; 3.9 im Listenkontext; 3.10 Übungen; Chapter 4: Subroutinen; 4.1 Subroutinen definieren; 4.2 Subroutinen aufrufen; 4.3 Rückgabewerte; 4.4 Argumente; 4.5 Private Variablen in Subroutinen; 4.6 Parameterlisten mit variabler Länge; 4.7 Anmerkungen zu lexikalischen (my)-Variablen; 4.8 Das »use strict«-Pragma; 4.9 Der return-Operator; 4.10 Nicht-skalare Rückgabewerte; 4.11 Persistente private Variablen (Zustandsvariablen); 4.12 Übungen; Chapter 5: Eingabe und Ausgabe; 5.1 Eingaben von der Standardeingabe (STDIN); 5.2 Eingaben vom Diamantoperator; 5.3 Aufrufende Argumente; 5.4 Ausgaben auf STDOUT; 5.5 Formatierte Ausgaben mit printf; 5.6 Datei-Handles; 5.7 Datei-Handles öffnen; 5.8 Schwerwiegende Fehler mit die abfangen; 5.9 Datei-Handles benutzen; 5.10 Standard-Datei-Handles erneut öffnen; 5.11 Ausgaben mit say; 5.12 Übungen; Chapter 6: Hashes; 6.1 Was ist ein Hash?; 6.2 Zugriff auf Hash-Elemente; 6.3 Hash-Funktionen; 6.4 Typische Anwendung für einen Hash; 6.5 Der %ENV-Hash; 6.6 Übungen; Chapter 7: Die Welt der regulären Ausdrücke; 7.1 Was sind reguläre Ausdrücke?; 7.2 Einfache Mustererkennung; 7.3 Zeichenklassen; 7.4 Übungen; Chapter 8: Mustersuche mit regulären Ausdrücken; 8.1 Mustervergleiche mit m//; 8.2 Das Standardverhalten von regulären Ausdrücken ändern; 8.3 Muster verankern; 8.4 Der Bindungsoperator =~; 8.5 Variableninterpolation in Suchmustern; 8.6 Die Speichervariablen; 8.7 Runde Klammern ohne Speicherfunktion; 8.8 Allgemeine Quantifier; 8.9 Präzedenz; 8.10 Ein Programm zum Testen von Mustern; 8.11 Übungen; Chapter 9: Textbearbeitung mit regulären Ausdrücken; 9.1 Ersetzungen mit s///; 9.2 Der split-Operator; 9.3 Die join-Funktion; 9.4 m// im Listenkontext; 9.5 Weitere mächtige reguläre Ausdrücke; 9.6 Übungen; Chapter 10: Weitere Kontrollstrukturen; 10.1 Kontrollstrukturen mit unless; 10.2 Kontrollstrukturen mit until; 10.3 Ausdrücke modifizieren; 10.4 Nackte Blöcke als Kontrollstrukturen; 10.5 Die elsif-Klausel; 10.6 Autoinkrement und Autodekrement; 10.7 Kontrollstrukturen mit for; 10.8 Schleifen kontrollieren; 10.9 Der Bedingungsoperator ?:; 10.10 Logische Operatoren; 10.11 Übungen; Chapter 11: Perl-Module; 11.1 Module finden; 11.2 Module installieren; 11.3 Einfache Module benutzen; 11.4 Übungen; Chapter 12: Dateitests; 12.1 Dateitest-Operatoren; 12.2 Die Funktionen stat und lstat; 12.3 Die Funktion localtime; 12.4 Bitorientierte Operatoren; 12.5 Übungen; Chapter 13: Zugriff auf Verzeichnisse; 13.1 Im Verzeichnisbaum navigieren; 13.2 Globbing; 13.3 Eine alternative Globbing-Syntax; 13.4 Verzeichnishandles; 13.5 Verzeichnisse rekursiv bearbeiten; 13.6 Dateien und Verzeichnisse bearbeiten; 13.7 Dateien löschen; 13.8 Dateien umbenennen; 13.9 Links und Dateien; 13.10 Anlegen und Entfernen von Verzeichnissen; 13.11 Zugriffsrechte ändern; 13.12 Besitzrechte ändern; 13.13 Zeitstempel ändern; 13.14 Übungen; Chapter 14: Strings und Sortierfunktionen; 14.1 Substrings finden mit index; 14.2 Substrings manipulieren mit substr; 14.3 Daten mit sprintf formatieren; 14.4 Fortgeschrittenes Sortieren; 14.5 Übungen; Chapter 15: Intelligente Vergleiche und given-when; 15.1 Der Operator für intelligente Vergleiche; 15.2 Präzedenz bei intelligenten Vergleichen; 15.3 Die given-Anweisung; 15.4 when mit vielen Elementen verwenden; 15.5 Übungen; Chapter 16: Prozessverwaltung; 16.1 Die Funktion system; 16.2 Die Funktion exec; 16.3 Umgebungsvariablen; 16.4 Backquotes zum Abfangen von Ausgaben benutzen; 16.5 Externe Prozesse mit IPC::System::Simple; 16.6 Prozesse als Datei-Handles; 16.7 Ganz tief unten mit fork; 16.8 Signale schicken und empfangen; 16.9 Übungen; Chapter 17: Fortgeschrittene Perl-Techniken; 17.1 Fehler mit eval abfangen; 17.2 Elemente mit grep aus einer Liste filtern; 17.3 Listenelemente umwandeln mit map; 17.4 Spezielle Werkzeuge für Listen; 17.5 Slices; 17.6 Übung; Lösungen zu den Übungen; Lösungen zu den Übungen in; Lösungen zu den Übungen in; Lösungen zu den Übungen in; Lösungen zu den Übungen in; Lösungen zu den Übungen in; Lösungen zu den Übungen in; Lösungen zu den Übungen in; Lösungen zu den Übungen in; Lösungen zu den Übungen in; Lösungen zu den Übungen in; Lösungen zu den Übungen in; Lösungen zu den Übungen in; Lösungen zu den Übungen in; Lösungen zu den Übungen in; Lösungen zu den Übungen in; Lösungen zu den Übungen in; Lösung zu der Übung in; Über das Lama hinaus; Weiterführende Dokumentation; Reguläre Ausdrücke; Packages; Die Funktionalität von Perl erweitern; Datenbanken; Weitere Operatoren und Funktionen; Mathematik; Listen und Arrays; Bits und Bytes; Formate; Netzwerke und Interprozess-Kommunikation (IPC); Sicherheit; Debugging; Kommandozeilenoptionen; Eingebaute Variablen; Syntaxerweiterungen; Referenzen; Gebundene Variablen; Operatoren überladen; Dynamisches Laden; Einbetten; Andere Sprachen nach Perl konvertieren; find-Kommandozeilen nach Perl konvertieren; Kommandozeilenoptionen in Ihren Programmen; Eingebettete Dokumentation; Weitere Möglichkeiten, Datei-Handles zu öffnen; Threads und Forking; Grafische Benutzerschnittstellen (GUIs); Und mehr ...; Das kleine Unicode-ABC; Unicode; UTF-8 & Co.; Alle Beteiligten auf Augenhöhe bringen; Extravagante Zeichen; Unicode in Perl verarbeiten; Weiterführende Literatur; Über die Autoren; Über den Übersetzer; Kolophon;