develooper Front page | perl.perl5.porters | Postings from September 2003

perlcheat

From:
H.Merijn Brand
Date:
September 5, 2003 04:07
Subject:
perlcheat
Message ID:
20030905125928.AD44.H.M.BRAND@hccnet.nl
FWIW here's my modified version that I use as screen backdrop :)

There's no guarantee that I won't change more.

Changes:

	· added defined-or in op precedence
	· replaced "SCALAR VALUES" section with FORMAT/glob access
	· Extended "REGEX METACHARS" with ZW assertions
	· Removed "DO" "DON'T" and second "LINKS" section in favour of the
	  REGEX EXTENTION and the new "CONFIGURATION" section (to be extended)

More squeezing possible, but for now I left the open space for future
extensions. I kinda like the screen backdrop like this!

--8<---
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    
                  FORMAT  *{$::{$fmt}}{FORMAT} 
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
list ops        |      alternation      REGEX CHARCLASSES
not             []     character class  .  == [^\n]
and             \b     word boundary    \s == [\x20\f\t\r\n]
or xor err      \z     string end       \w == [A-Za-z0-9_]
                ()     capture          \d == [0-9]
                (?:p)  no capture       \S, \W and \D negate
                (?#t)  comment
                (?=p)  ZW pos ahead     CONFIGURATION
                (?!p)  ZW neg ahead     perl -V:ccversion
                (?<=p) ZW pos behind
                (?<!p) ZW neg behind
                (?>p)  No backtrack inside
                                   
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
-->8---

-- 
H.Merijn Brand        Amsterdam Perl Mongers (http://amsterdam.pm.org/)
using perl-5.6.1, 5.8.0, & 5.9.x, and 806 on  HP-UX 10.20 & 11.00, 11i,
   AIX 4.3, SuSE 8.2, and Win2k.           http://www.cmve.net/~merijn/
http://archives.develooper.com/daily-build@perl.org/   perl-qa@perl.org
send smoke reports to: smokers-reports@perl.org, QA: http://qa.perl.org





nntp.perl.org: Perl Programming lists via nntp and http.
Comments to Ask Bjørn Hansen at ask@perl.org | Group listing | About