PERLCHEAT
Section: Perl Programmers Reference Guide (1)Updated: 2009-02-12
Index Return to Main Contents
NAME
perlcheat - Perl 5 Cheat SheetDESCRIPTION
This 'cheat sheet' is a handy reference, meant for beginning Perl programmers. Not everything is mentioned, but 195 features may already be overwhelming.The sheet
CONTEXTS SIGILS ARRAYS HASHES void $scalar whole: @array %hash scalar @array slice: @array[0, 2] @hash{'a', 'b'} list %hash element: $array[0] $hash{'a'} &sub *glob SCALAR VALUES number, string, reference, glob, undef REFERENCES \ references $$foo[1] aka $foo->[1] $@%&* dereference $$foo{bar} aka $foo->{bar} [] anon. arrayref ${$$foo[1]}[2] aka $foo->[1]->[2] {} anon. hashref ${$$foo[1]}[2] aka $foo->[1][2] \() list of refs NUMBERS vs STRINGS LINKS OPERATOR PRECEDENCE = = perl.plover.com -> + . search.cpan.org ++ -- == != eq ne cpan.org ** < > <= >= lt gt le ge pm.org ! ~ \ u+ u- <=> cmp tpj.com =~ !~ perldoc.com * / % x SYNTAX + - . for (LIST) { }, for (a;b;c) { } << >> while ( ) { }, until ( ) { } named uops if ( ) { } elsif ( ) { } else { } < > <= >= lt gt le ge unless ( ) { } elsif ( ) { } else { } == != <=> eq ne cmp for equals foreach (ALWAYS) & | ^ REGEX METACHARS REGEX MODIFIERS && ^ string begin /i case insens. || $ str. end (before \n) /m line based ^$ .. ... + one or more /s . includes \n ?: * zero or more /x ign. wh.space = += -= *= etc. ? zero or one /g global , => {3,7} repeat in range /o cmpl pat. once list ops () capture not (?:) no capture REGEX CHARCLASSES and [] character class . == [^\n] or xor | alternation \s == whitespace \b word boundary \w == word characters \z string end \d == digits DO \S, \W and \D negate use strict; DON'T use warnings; "$foo" LINKS my $var; $$variable_name perl.com open() or die $!; `$userinput` use.perl.org use Modules; /$userinput/ perl.apache.org FUNCTION RETURN LISTS stat localtime caller SPECIAL VARIABLES 0 dev 0 second 0 package $_ default variable 1 ino 1 minute 1 filename $0 program name 2 mode 2 hour 2 line $/ input separator 3 nlink 3 day 3 subroutine $\ output separator 4 uid 4 month-1 4 hasargs $| autoflush 5 gid 5 year-1900 5 wantarray $! sys/libcall error 6 rdev 6 weekday 6 evaltext $@ eval error 7 size 7 yearday 7 is_require $$ process ID 8 atime 8 is_dst 8 hints $. line number 9 mtime 9 bitmask @ARGV command line args 10 ctime just use @INC include paths 11 blksz POSIX:: 3..9 only @_ subroutine args 12 blcks strftime! with EXPR %ENV environment
ACKNOWLEDGEMENTS
The first version of this document appeared on Perl Monks, where several people had useful suggestions. Thank you, Perl Monks.A special thanks to Damian Conway, who didn't only suggest important changes, but also took the time to count the number of listed features and make a Perl 6 version to show that Perl will stay Perl.
AUTHOR
Juerd Waalboer <#####@juerd.nl>, with the help of many Perl Monks.SEE ALSO
http://perlmonks.org/?node_id=216602 the original PM post http://perlmonks.org/?node_id=238031 Damian Conway's Perl 6 version http://juerd.nl/site.plp/perlcheat home of the Perl Cheat Sheet
Index
This document was created by man2html, using the manual pages.
Time: 05:29:07 GMT, December 24, 2015