Man page - perlcheat(1)
Packages contas this manual
- perlhpux(1)
- perlgov(1)
- perlunicook(1)
- perlclib(1)
- perl5223delta(1)
- perlmodlib(1)
- perlrun(1)
- perllocale(1)
- perl5144delta(1)
- perlunifaq(1)
- perlclassguts(1)
- perlclass(1)
- perl5180delta(1)
- perlmod(1)
- perltodo(1)
- perl5263delta(1)
- perl5301delta(1)
- perlpragma(1)
- perl5125delta(1)
- perl5283delta(1)
- perlutil(1)
- perlcn(1)
- perl5142delta(1)
- perlpodspec(1)
- perl5202delta(1)
- perl561delta(1)
- perlsec(1)
- perl5244delta(1)
- perldiag(1)
- perlbot(1)
- perlfunc(1)
- perl5143delta(1)
- perl5342delta(1)
- perl5302delta(1)
- perl5343delta(1)
- perlhack(1)
- perl5122delta(1)
- perltrap(1)
- perldelta(1)
- perl5282delta(1)
- perlsyn(1)
- perl5124delta(1)
- perlpacktut(1)
- perl5101delta(1)
- perldtrace(1)
- perl5260delta(1)
- perlintern(1)
- perlreftut(1)
- perlfreebsd(1)
- perl5261delta(1)
- perl5280delta(1)
- perlpod(1)
- perl5203delta(1)
- perldeprecation(1)
- perl586delta(1)
- perl5240delta(1)
- perlreguts(1)
- perlre(1)
- perlriscos(1)
- perl5182delta(1)
- perlaix(1)
- perl5281delta(1)
- perlexperiment(1)
- perl58delta(1)
- perl5361delta(1)
- perl584delta(1)
- perlsolaris(1)
- perl5363delta(1)
- perl5241delta(1)
- perlperf(1)
- perlcygwin(1)
- perl5300delta(1)
- perl5401delta(1)
- perlvms(1)
- perlsecpolicy(1)
- perlxstypemap(1)
- perldocstyle(1)
- perlop(1)
- perl5362delta(1)
- perl5140delta(1)
- perlembed(1)
- perlbs2000(1)
- perlos400(1)
- perlrebackslash(1)
- perl5200delta(1)
- perlopentut(1)
- perlos2(1)
- perlstyle(1)
- perl56delta(1)
- perlfaq7(1)
- perldbmfilter(1)
- perlmodstyle(1)
- perl5222delta(1)
- perl5303delta(1)
- perl5181delta(1)
- perlcall(1)
- perl5381delta(1)
- perl5162delta(1)
- perlvar(1)
- perlxs(1)
- perlhaiku(1)
- perlsynology(1)
- perlnumber(1)
- perl5321delta(1)
- perl5243delta(1)
- perlamiga(1)
- perlref(1)
- perl5360delta(1)
- perl5161delta(1)
- perlunicode(1)
- perlapio(1)
- perltooc(1)
- perl588delta(1)
- perl5100delta(1)
- perldsc(1)
- perlgit(1)
- perlobj(1)
- perlmodinstall(1)
- perlopenbsd(1)
- perlbook(1)
- perl585delta(1)
- perlboot(1)
- perlfaq1(1)
- perlapi(1)
- perl5004delta(1)
- perl5121delta(1)
- perlretut(1)
- perlfaq3(1)
- perllexwarn(1)
- perl5224delta(1)
- perlipc(1)
- perliol(1)
- perl5221delta(1)
- perlglossary(1)
- perltoot(1)
- perl5382delta(1)
- perl5160delta(1)
- perlfaq9(1)
- perlxstut(1)
- perlpolicy(1)
- perlintro(1)
- perlandroid(1)
- perl5184delta(1)
- perl587delta(1)
- perlreref(1)
- perlreapi(1)
- perlhacktut(1)
- perluniintro(1)
- perlrecharclass(1)
- perlfaq6(1)
- perltw(1)
- perllol(1)
- perlfaq4(1)
- perldebtut(1)
- perlebcdic(1)
- perlko(1)
- perlqnx(1)
- perlhacktips(1)
- perlthrtut(1)
- perlvos(1)
- perl5340delta(1)
- perl5242delta(1)
- perlsub(1)
- perlform(1)
- perlnewmod(1)
- perl5141delta(1)
- perllinux(1)
- perldebguts(1)
- perl5120delta(1)
- perltoc(1)
- perlrequick(1)
- perlirix(1)
- perlfilter(1)
- perlport(1)
- perlfaq5(1)
- perlootut(1)
- perltie(1)
- perlfaq8(1)
- perl581delta(1)
- perldata(1)
- perl5163delta(1)
- perlartistic(1)
- perluniprops(1)
- perltru64(1)
- perl5201delta(1)
- perlinterp(1)
- perlpodstyle(1)
- perl5380delta(1)
- perl583delta(1)
- perlplan9(1)
- perlfaq2(1)
- perljp(1)
- perl5320delta(1)
- perlhist(1)
- perlunitut(1)
- perlos390(1)
- perldoc(1)
- perlmacosx(1)
- perlsource(1)
- perl5400delta(1)
- perlfork(1)
- perlhurd(1)
- perl5262delta(1)
- perl5220delta(1)
- perlmroapi(1)
- perlcheat(1)
- perlcommunity(1)
- perlfaq(1)
- perl5341delta(1)
- perlrepository(1)
- perl5123delta(1)
- perldebug(1)
- perlguts(1)
- perlwin32(1)
- perlgpl(1)
- perl582delta(1)
- perl589delta(1)
- perl5005delta(1)
Package: perl-doc
apt-get install perl-doc
apt-get install perl-doc
Manuals in package:
Available languages:
en ro deManual
| PERLCHEAT(1) | Perl Programmers Reference Guide | PERLCHEAT(1) |
NAME
perlcheat - Perl 5 Cheat Sheet
DESCRIPTION
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 ref ARRAYS HASHES
void $scalar SCALAR @array %hash
scalar @array ARRAY @array[0, 2] @hash{'a', 'b'}
list %hash HASH $array[0] $hash{'a'}
&sub CODE
*glob GLOB SCALAR VALUES
FORMAT number, string, ref, glob, undef
REFERENCES
\ reference $$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
SYNTAX
OPERATOR PRECEDENCE foreach (LIST) { } for (a;b;c) { }
-> while (e) { } until (e) { }
++ -- if (e) { } elsif (e) { } else { }
** unless (e) { } elsif (e) { } else { }
! ~ \ u+ u- given (e) { when (e) {} default {} }
=~ !~
* / % x NUMBERS vs STRINGS FALSE vs TRUE
+ - . = = undef, "", 0, "0"
<< >> + . anything else
named uops == != eq ne
< > <= >= lt gt le ge < > <= >= lt gt le ge
== != <=> eq ne cmp ~~ <=> cmp
&
| ^ REGEX MODIFIERS REGEX METACHARS
&& /i case insensitive ^ string begin
|| // /m line based ^$ $ str end (bfr \n)
.. ... /s . includes \n + one or more
?: /x /xx ign. wh.space * zero or more
= += last goto /p preserve ? zero or one
, => /a ASCII /aa safe {3,7} repeat in range
list ops /l locale /d dual | alternation
not /u Unicode [] character class
and /e evaluate /ee rpts \b boundary
or xor /g global \z string end
/o compile pat once () capture
DEBUG (?:p) no capture
-MO=Deparse REGEX CHARCLASSES (?#t) comment
-MO=Terse . [^\n] (?=p) ZW pos ahead
-D## \s whitespace (?!p) ZW neg ahead
-d:Trace \w word chars (?<=p) ZW pos behind \K
\d digits (?<!p) ZW neg behind
CONFIGURATION \pP named property (?>p) no backtrack
perl -V:ivsize \h horiz.wh.space (?|p|p)branch reset
\R linebreak (?<n>p)named capture
\S \W \D \H negate \g{n} ref to named cap
\K keep left part
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 10 hinthash @INC include paths
11 blksz 3..10 only @_ subroutine args
12 blcks 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 Raku version to show that Perl will stay Perl.
AUTHOR
Juerd Waalboer <#####@juerd.nl>, with the help of many Perl Monks.
SEE ALSO
- <https://perlmonks.org/?node_id=216602> - the original PM post
- <https://perlmonks.org/?node_id=238031> - Damian Conway's Raku version
- <https://juerd.nl/site.plp/perlcheat> - home of the Perl Cheat Sheet
| 2025-07-27 | perl v5.40.1 |