OPERATORY
Operatory, które mogą być używane podczas programowania w Perlu w większości zapożyczone są z języków C, Fortranu, sed oraz awk. Operatory można podzielić ze względu na: liczbę argumentów (jednoargumentowe, dwuargumentowe i trzyargumentowe), typ (wrostkowe i przedrostkowe) oraz rodzaj obiektów, na które działają (liczby, napisy i pliki).
Wyrażenia często muszą być łączone i modyfikowane na różne sposoby i do tego służą właśnie operatory. O kolejności wykonywania operacji decyduje priorytet danego operatora. Można spotkać określenie, że jeden operator jest bardziej wiążący niż inny. Oznacza to tyle, że ma wyższy priorytet niż inny.
Operatory Perlą od najwyższego do najniższego priorytetu.
Łączność |
Typ operatora |
Lewostronna |
zwrotów i list |
Lewostronna |
-> (operator dereferencji) |
Brak |
++— (autoinkrementacja i autodekrementacja) |
Prawostronna |
** (podnoszenie do potęgi) |
Prawostronna |
! ~\+ - |
Lewostronna |
=~!~ (operatory wiążące) |
Lewostronna |
*/%x (operatory mnożnikowe) |
Lewostronna |
+ - . |
Lewostronna |
«» (operatory przesuwania) |
Prawostronna |
alarm, my, ord, rmdir, sin, uc, stat, lc i inne |
Prawostronna |
<> <= >= lt, gt, le, ge (operatory relacyjne) |
Prawostronna |
== != <=> eq, ne, cmp (operatory równości) |
Lewostronna |
& |
Lewostronna |
1 (operatory zakresu) |
Lewostronna |
&& (operatory logiczne) |
Lewostronna |
I| (operatory logiczne) |
Brak | |
Prawostronna |
?: (operator warunkowy) |
Prawostronna |
- += - *= (operatory przypisania) |
Lewostronna |
, => (operatory przecinka) |
Brak |
Listowe |
Prawostronna |
Not (operatory logiczne) |
Lewostronna |
And (operatory logiczne) |
Lewostronna |
Or, xor (operatory logiczne) |
- 10-