perlcheat.pdf

(20 KB) Pobierz
Perl version 5.10.0 documentation - perlcheat
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
void
scalar
list
SIGILS
$scalar
@array
%hash
&sub
*glob
ARRAYS
whole:
@array
slice:
@array[0, 2]
element: $array[0]
HASHES
%hash
@hash{'a', 'b'}
$hash{'a'}
SCALAR VALUES
number, string, reference, glob, undef
$$foo[1]
$$foo{bar}
${$$foo[1]}[2]
${$$foo[1]}[2]
NUMBERS vs
=
+
== !=
< > <= >=
<=>
aka
aka
aka
aka
$foo->[1]
$foo->{bar}
$foo->[1]->[2]
$foo->[1][2]
LINKS
perl.plover.com
search.cpan.org
cpan.org
ge
pm.org
tpj.com
perldoc.com
REFERENCES
\
references
$@%&* dereference
[]
anon. arrayref
{}
anon. hashref
\()
list of refs
OPERATOR PRECEDENCE
->
++ --
**
! ~ \ u+ u-
=~ !~
* / % 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
STRINGS
=
.
eq ne
lt gt le
cmp
http://perldoc.perl.org
Page 1
Perl version 5.10.0 documentation - perlcheat
FUNCTION RETURN LISTS
stat
localtime
0 dev
0 second
1 ino
1 minute
2 mode
2 hour
3 nlink 3 day
4 uid
4 month-1
5 gid
5 year-1900
6 rdev
6 weekday
7 size
7 yearday
8 atime 8 is_dst
9 mtime
10 ctime just use
11 blksz POSIX::
12 blcks strftime!
caller
0 package
1 filename
2 line
3 subroutine
4 hasargs
5 wantarray
6 evaltext
7 is_require
8 hints
9 bitmask
3..9 only
with EXPR
SPECIAL VARIABLES
$_
default variable
$0
program name
$/
input separator
$\
output separator
$|
autoflush
$!
sys/libcall error
$@
eval error
$$
process ID
$.
line number
@ARGV command line args
@INC include paths
@_
subroutine args
%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
http://perlmonks.org/?node_id=238031
http://juerd.nl/site.plp/perlcheat
the original PM post
Damian Conway's Perl 6 version
home of the Perl Cheat Sheet
http://perldoc.perl.org
Page 2
Zgłoś jeśli naruszono regulamin