perlfaq - frequently asked questions about Perl


perlfaq - frequently asked questions about Perl ($Date: 2003/01/31 17:37:17 $)


The perlfaq is divided into several documents based on topics. A table of contents is at the end of this document.

Where to get the perlfaq

Extracts of the perlfaq are posted regularly to comp.lang.perl.misc. It is available on many web sites: and

How to contribute to the perlfaq

You may mail corrections, additions, and suggestions to . This alias should not be used to ask FAQs. It's for fixing the current FAQ. Send questions to the comp.lang.perl.misc newsgroup. You can view the source tree at (which is outside of the main Perl source tree). The CVS repository notes all changes to the FAQ.

What will happen if you mail your Perl programming problems to the authors

Your questions will probably go unread, unless they're suggestions of new questions to add to the FAQ, in which case they should have gone to the instead.

You should have read section 2 of this faq. There you would have learned that comp.lang.perl.misc is the appropriate place to go for free advice. If your question is really important and you require a prompt and correct answer, you should hire a consultant.


The original perlfaq was written by Tom Christiansen, then expanded by collaboration between Tom and Nathan Torkington. The current document is maintained by the perlfaq-workers ( Several people have contributed answers, corrections, and comments.

Author and Copyright Information

Copyright (c) 1997-2003 Tom Christiansen, Nathan Torkington, and other contributors noted in the answers.

All rights reserved.

Bundled Distributions

This documentation is free; you can redistribute it and/or modify it under the same terms as Perl itself.

Irrespective of its distribution, all code examples in these files are hereby placed into the public domain. You are permitted and encouraged to use this code in your own programs for fun or for profit as you see fit. A simple comment in the code giving credit would be courteous but is not required.


This information is offered in good faith and in the hope that it may be of use, but is not guaranteed to be correct, up to date, or suitable for any particular purpose whatsoever. The authors accept no liability in respect of this information or its use.

Table of Contents

perlfaq - this document
perlfaq1 - General Questions About Perl
perlfaq2 - Obtaining and Learning about Perl
perlfaq3 - Programming Tools
perlfaq4 - Data Manipulation
perlfaq5 - Files and Formats
perlfaq6 - Regular Expressions
perlfaq7 - General Perl Language Issues
perlfaq8 - System Interaction
perlfaq9 - Networking

The Questions

the perlfaq1 manpage: General Questions About Perl

Very general, high-level questions about Perl.

the perlfaq2 manpage: Obtaining and Learning about Perl

Where to find source and documentation for Perl, support, and related matters.

the perlfaq3 manpage: Programming Tools

Programmer tools and programming support.

the perlfaq4 manpage: Data Manipulation

Manipulating numbers, dates, strings, arrays, hashes, and miscellaneous data issues.

the perlfaq5 manpage: Files and Formats

I/O and the ``f'' issues: filehandles, flushing, formats, and footers.

the perlfaq6 manpage: Regular Expressions

Pattern matching and regular expressions.

the perlfaq7 manpage: General Perl Language Issues

General Perl language issues that don't clearly fit into any of the other sections.

the perlfaq8 manpage: System Interaction

Interprocess communication (IPC), control over the user-interface (keyboard, screen and pointing devices).

the perlfaq9 manpage: Networking

Networking, the internet, and a few on the web.

 perlfaq - frequently asked questions about Perl