
Learning Perl
Description
Alles über E-Books | Antworten auf Fragen rund um E-Books, Kopierschutz und Dateiformate finden Sie in unserem Info- & Hilfebereich.
More details
Other editions
New editions

Additional editions
Previous edition

Content
- Intro
- Table of Contents
- Preface
- Typographical Conventions
- How to Contact Us
- Using Code Examples
- Safari® Enabled
- History of This Book
- Acknowledgments
- Chapter 1. Introduction
- Questions and Answers
- Is This the Right Book for You?
- Why Are There So Many Footnotes?
- What About the Exercises and Their Answers?
- What Do Those Numbers at the Start of the Exercise Mean?
- What If I'm a Perl Course Instructor?
- What Does "Perl" Stand For?
- Why Did Larry Create Perl?
- Why Didn't Larry Just Use Some Other Language?
- Is Perl Easy or Hard?
- How Did Perl Get to Be So Popular?
- What's Happening with Perl Now?
- What's Perl Really Good For?
- What Is Perl Not Good For?
- How Can I Get Perl?
- What Is CPAN?
- How Can I Get Support for Perl?
- Are There Any Other Kinds of Support?
- What If I Find a Bug in Perl?
- How Do I Make a Perl Program?
- A Simple Program
- What's Inside That Program?
- How Do I Compile Perl?
- A Whirlwind Tour of Perl
- Exercises
- Chapter 2. Scalar Data
- Numbers
- All Numbers Have the Same Format Internally
- Floating-Point Literals
- Integer Literals
- Nondecimal Integer Literals
- Numeric Operators
- Strings
- Single-Quoted String Literals
- Double-Quoted String Literals
- String Operators
- Automatic Conversion Between Numbers and Strings
- Perl's Built-in Warnings
- Scalar Variables
- Choosing Good Variable Names
- Scalar Assignment
- Binary Assignment Operators
- Output with print
- Interpolation of Scalar Variables into Strings
- Operator Precedence and Associativity
- Comparison Operators
- The if Control Structure
- Boolean Values
- Getting User Input
- The chomp Operator
- The while Control Structure
- The undef Value
- The defined Function
- Exercises
- Chapter 3. Lists and Arrays
- Accessing Elements of an Array
- Special Array Indices
- List Literals
- The qw Shortcut
- List Assignment
- The pop and push Operators
- The shift and unshift Operators
- Interpolating Arrays into Strings
- The foreach Control Structure
- Perl's Favorite Default: $_
- The reverse Operator
- The sort Operator
- Scalar and List Context
- Using List-Producing Expressions in Scalar Context
- Using Scalar-Producing Expressions in List Context
- Forcing Scalar Context
- &STDIN& in List Context
- Exercises
- Chapter 4. Subroutines
- Defining a Subroutine
- Invoking a Subroutine
- Return Values
- Arguments
- Private Variables in Subroutines
- Variable-Length Parameter Lists
- A Better &max Routine
- Empty Parameter Lists
- Notes on Lexical (my) Variables
- The use strict Pragma
- The return Operator
- Omitting the Ampersand
- Nonscalar Return Values
- Persistent, Private Variables
- Exercises
- Chapter 5. Input and Output
- Input from Standard Input
- Input from the Diamond Operator
- The Invocation Arguments
- Output to Standard Output
- Formatted Output with printf
- Arrays and printf
- Filehandles
- Opening a Filehandle
- Bad Filehandles
- Closing a Filehandle
- Fatal Errors with die
- Warning Messages with warn
- Using Filehandles
- Changing the Default Output Filehandle
- Reopening a Standard Filehandle
- Output with say
- Exercises
- Chapter 6. Hashes
- What Is a Hash?
- Why Use a Hash?
- Hash Element Access
- The Hash As a Whole
- Hash Assignment
- The Big Arrow
- Hash Functions
- The keys and values Functions
- The each Function
- Typical Use of a Hash
- The exists Function
- The delete Function
- Hash Element Interpolation
- The %ENV hash
- Exercises
- Chapter 7. In the World of Regular Expressions
- What Are Regular Expressions?
- Using Simple Patterns
- About Metacharacters
- Simple Quantifiers
- Grouping in Patterns
- Alternatives
- Character Classes
- Character Class Shortcuts
- Negating the Shortcuts
- Exercises
- Chapter 8. Matching with Regular Expressions
- Matches with m//
- Option Modifiers
- Case-Insensitive Matching with /i
- Matching Any Character with /s
- Adding Whitespace with /x
- Combining Option Modifiers
- Other Options
- Anchors
- Word Anchors
- The Binding Operator, =~
- Interpolating into Patterns
- The Match Variables
- The Persistence of Memory
- Noncapturing Parentheses
- Named Captures
- The Automatic Match Variables
- General Quantifiers
- Precedence
- Examples of Precedence
- And There's More
- A Pattern Test Program
- Exercises
- Chapter 9. Processing Text with Regular Expressions
- Substitutions with s///
- Global Replacements with /g
- Different Delimiters
- Option Modifiers
- The Binding Operator
- Case Shifting
- The split Operator
- The join Function
- m// in List Context
- More Powerful Regular Expressions
- Nongreedy Quantifiers
- Matching Multiple-Line Text
- Updating Many Files
- In-Place Editing from the Command Line
- Exercises
- Chapter 10. More Control Structures
- The unless Control Structure
- The else Clause with unless
- The until Control Structure
- Expression Modifiers
- The Naked Block Control Structure
- The elsif Clause
- Autoincrement and Autodecrement
- The Value of Autoincrement
- The for Control Structure
- The Secret Connection Between foreach and for
- Loop Controls
- The last Operator
- The next Operator
- The redo Operator
- Labeled Blocks
- The Ternary Operator, ?:
- Logical Operators
- The Value of a Short-Circuit Operator
- The defined-or Operator
- Control Structures Using Partial-Evaluation Operators
- Exercises
- Chapter 11. Perl Modules
- Finding Modules
- Installing Modules
- Using Simple Modules
- The File::Basename Module
- Using Only Some Functions from a Module
- The File::Spec Module
- CGI.pm
- Databases and DBI
- Exercise
- Chapter 12. File Tests
- File Test Operators
- Testing Several Attributes of the Same File
- Stacked File Test Operators
- The stat and lstat Functions
- The localtime Function
- Bitwise Operators
- Using Bitstrings
- Exercises
- Chapter 13. Directory Operations
- Moving Around the Directory Tree
- Globbing
- An Alternate Syntax for Globbing
- Directory Handles
- Recursive Directory Listing
- Manipulating Files and Directories
- Removing Files
- Renaming Files
- Links and Files
- Making and Removing Directories
- Modifying Permissions
- Changing Ownership
- Changing Timestamps
- Exercises
- Chapter 14. Strings and Sorting
- Finding a Substring with index
- Manipulating a Substring with substr
- Formatting Data with sprintf
- Using sprintf with "Money Numbers"
- Advanced Sorting
- Sorting a Hash by Value
- Sorting by Multiple Keys
- Exercises
- Chapter 15. Smart Matching and given-when
- The Smart Match Operator
- Smart Match Precedence
- The given Statement
- Dumb Matching
- when with Many Items
- Exercises
- Chapter 16. Process Management
- The system Function
- Avoiding the Shell
- The exec Function
- The Environment Variables
- Using Backquotes to Capture Output
- Using Backquotes in a List Context
- Processes as Filehandles
- Getting Down and Dirty with Fork
- Sending and Receiving Signals
- Exercises
- Chapter 17. Some Advanced Perl Techniques
- Trapping Errors with eval
- Picking Items from a List with grep
- Transforming Items from a List with map
- Unquoted Hash Keys
- Slices
- Array Slice
- Hash Slice
- Exercise
- Appendix A. Exercise Answers
- Answers to Chapter 2 Exercises
- Answers to Chapter 3 Exercises
- Answers to Chapter 4 Exercises
- Answers to Chapter 5 Exercises
- Answers to Chapter 6 Exercises
- Answers to Chapter 7 Exercises
- Answers to Chapter 8 Exercises
- Answers to Chapter 9 Exercises
- Answers to Chapter 10 Exercises
- Answer to Chapter 11 Exercise
- Answers to Chapter 12 Exercises
- Answers to Chapter 13 Exercises
- Answers to Chapter 14 Exercises
- Answers to Chapter 15 Exercises
- Answers to Chapter 16 Exercises
- Answer to Chapter 17 Exercise
- Appendix B. Beyond the Llama
- Further Documentation
- Regular Expressions
- Packages
- Extending Perl's Functionality
- Libraries
- Modules
- Finding and Installing Modules
- Writing Your Own Modules
- Some Important Modules
- The CGI Modules
- The Cwd Module
- The Fatal Module
- The File::Basename Module
- The File::Copy Module
- The File::Spec Module
- The Image::Size Module
- The Net::SMTP Module
- The POSIX Module
- The Sys::Hostname Module
- The Text::Wrap Module
- The Time::Local Module
- Pragmas
- The constant Pragma
- The diagnostics Pragma
- The lib Pragma
- The strict Pragma
- The vars Pragma
- The warnings Pragma
- Databases
- Direct System Database Access
- Flat-file Database Access
- Other Operators and Functions
- Transliteration with tr///
- Here Documents
- Mathematics
- Advanced Math Functions
- Imaginary and Complex Numbers
- Large and High-Precision Numbers
- Lists and Arrays
- map and grep
- The splice Operator
- Bits and Pieces
- Formats
- Networking and IPC
- System V IPC
- Sockets
- Security
- Debugging
- The Common Gateway Interface (CGI)
- Command-Line Options
- Built-in Variables
- Syntax Extensions
- References
- Complex Data Structures
- Object-Oriented Programming
- Anonymous Subroutines and Closures
- Tied Variables
- Operator Overloading
- Dynamic Loading
- Embedding
- Converting Other Languages to Perl
- Converting find Command Lines to Perl
- Command-Line Options in Your Programs
- Embedded Documentation
- More Ways to Open Filehandles
- Locales and Unicode
- Threads and Forking
- Graphical User Interfaces (GUIs)
- And More.
- Index
System requirements
File format: ePUB
Copy protection: Adobe-DRM (Digital Rights Management)
System requirements:
- Computer (Windows; MacOS X; Linux): Install the free reader Adobe Digital Editions prior to download (see eBook Help).
- Tablet/smartphone (Android; iOS): Install the free app Adobe Digital Editions or the app PocketBook before downloading (see eBook Help).
- E-reader: Bookeen, Kobo, Pocketbook, Sony, Tolino and many more (not Kindle).
The file format ePub works well for novels and non-fiction books – i.e., „flowing” text without complex layout. On an e-reader or smartphone, line and page breaks automatically adjust to fit the small displays.
This eBook uses Adobe-DRM, a „hard” copy protection. If the necessary requirements are not met, unfortunately you will not be able to open the eBook. You will therefore need to prepare your reading hardware before downloading.
Please note: We strongly recommend that you authorise using your personal Adobe ID after installation of any reading software.
For more information, see our ebook Help page.