┬ Perl α±±ε÷Φα≥ΦΓφε±≥ⁿ Φ ∩≡Φε≡Φ≥σ≥φε±≥ⁿ ε∩σ≡α≥ε≡εΓ αφαδεπΦ≈φα τ√Ω≤ ╤. ═Φµσ ∩σ≡σ≈Φ±δσφ√ Γ±σ ε∩σ≡α≥ε≡√ Γ ∩ε≡ ΣΩσ ≤∞σφⁿ°σφΦ ∩≡Φε≡Φ≥σ≥α, Γ φα≈αδσ ±≥≡εΩΦ ≤Ωαταφα α±±ε÷Φα≥ΦΓφε±≥ⁿ.
α±±ε÷. | ε∩σ≡α≥ε≡√ |
---|---|
δσΓα | ≥σ≡∞√ Φ δσΓε±≥ε≡εφφΦσ ±∩Φ±ΩεΓ√σ ε∩σ≡α≥ε≡√ |
δσΓα | -> |
- | ++ -- |
∩≡αΓα | ** |
∩≡αΓα | ! ~ \ ≤φα≡φ√σ + Φ - |
δσΓα | =~ !~ |
δσΓα | * / % x |
δσΓα | + - . |
δσΓα | << >> |
- | Φ∞σφεΓαφφ√σ ≤φα≡φ√σ ε∩σ≡α≥ε≡√ |
- | < > <= >= lt gt le ge |
- | == != <=> eq ne cmp |
δσΓα | & |
δσΓα | | ^ |
δσΓα | && |
δσΓα | || |
- | .. |
∩≡αΓα | ?: |
∩≡αΓα | = += -= *= Φ ≥.Σ. |
δσΓα | , => |
- | ∩≡αΓε±≥ε≡εφφΦσ ±∩Φ±ΩεΓ√σ ε∩σ≡α≥ε≡√ |
δσΓα | not |
δσΓα | and |
δσΓα | or xor |
╥σ≡∞√ Φ δσΓε±≥ε≡εφφΦσ ±∩Φ±ΩεΓ√σ ε∩σ≡α≥ε≡√.
╦■ßεΘ ≥σ≡∞ Φ∞σσ≥ ±α∞√Θ Γ√±εΩΦΘ ∩≡Φε≡Φ≥σ≥. ╩ ≥σ≡∞≤ ε≥φε± ≥± ∩σ≡σ∞σφφ√σ, ΩαΓ√≈ΩΦ Φ Φ⌡ ε∩σ≡α≥ε≡√, α≡Φ⌠∞σ≥Φ≈σ±ΩΦσ Φ δεπΦ≈σ±ΩΦσ Γ√≡αµσφΦ Γ ±ΩεßΩα⌡, δ■ß√σ ⌠≤φΩ÷ΦΦ ± ∩α≡α∞σ≥≡α∞Φ Γ ±ΩεßΩα⌡. ╘αΩ≥Φ≈σ±ΩΦ ≥αΩΦ⌡ ⌠≤φΩ÷ΦΘ φσ≥, ≥αΩ ΩαΩ ²≥ε ∩≡ε±≥ε ≤φα≡φ√σ Φ ±∩Φ±ΩεΓ√σ ε∩σ≡α≥ε≡√. ╧≡ε±≥ε εφΦ ΓσΣ≤≥ ±σß ∩εΣεßφε ⌠≤φΩ÷Φ ∞ ± ∩α≡α∞σ≥≡α∞Φ Γ ±ΩεßΩα⌡. ╧εΣ≡εßφε ±∞ε≥≡Φ πδαΓ≤ ╘≤φΩ÷ΦΦ.
┼±δΦ ∩ε±δσ δ■ßεπε ±∩Φ±ΩεΓεπε ε∩σ≡α≥ε≡α ( print(), Φ ≥.Σ.) ΦδΦ ≤φα≡φεπε ε∩σ≡α≥ε≡α (chdir(), Φ ≥.Σ.) ±δσΣ≤σ≥ δσΓα Ω≡≤πδα ±ΩεßΩα, ≥ε ε∩σ≡α≥ε≡√ Γφ≤≥≡Φ ±ΩεßεΩ Φ∞σ■≥ φαΦΓ√±°ΦΘ ∩≡Φε≡Φ≥σ≥. ╥αΩ µσ ΩαΩ Φ εß√≈φ√σ ⌠≤φΩ÷ΦΦ.
┼±δΦ ±ΩεßΩΦ ε≥±≤≥±≥Γ≤■≥, ≥ε ∩≡Φε≡Φ≥σ≥ ±∩Φ±ΩεΓ√⌡ ε∩σ≡α≥ε≡εΓ ΦδΦ φαΦΓ√±°ΦΘ ΦδΦ φαΦ∞σφⁿ°ΦΘ Γ ε≥φε°σφΦΦ ε∩σ≡α≥ε≡εΓ ±∩≡αΓα ΦδΦ ±δσΓα ε≥ φσπε.
═α∩≡Φ∞σ≡:
@i = ('a ','b ', print 'c ', 'd '); print "\n",@i,"\n";╨στ≤δⁿ≥α≥:
c d a b 1
╟Σσ±ⁿ ∞√ Φ∞σσ∞ ±∩Φ±ΩεΓ√Θ ε∩σ≡α≥ε≡ print. ─δ τα∩ ≥√⌡ ±δσΓα ε≥ φσπε εφ Φ∞σσ≥ φαΦ∞σφⁿ°ΦΘ ∩≡Φε≡Φ≥σ≥, φε ∩εΓ√°ασ≥ ∩≡Φε≡Φ≥σ≥ ∩≡αΓεΘ τα∩ ≥εΘ. ╧ε²≥ε∞≤ ∩≡αΓα τα∩ ≥α Γε±∩≡ΦφΦ∞ασ≥± ΩαΩ ∩α≡α∞σ≥≡ Σδ print Φ ∩σ≈α≥ασ≥± 'c d', α δσΓα ∩≡ε±≥ε τα∩Φ±√Γασ≥ ΩεΣ ταΓσ≡°σφΦ ε∩σ≡α÷ΦΦ Γ ∞α±±ΦΓ @i Φ ∩ε±δσΣφΦΘ print ∩εΩατ√Γασ≥ ²≥ε.
╬∩σ≡α≥ε≡ '->'
╥αΩ µσ ΩαΩ Γ ╤ ΦδΦ ╤++ ²≥ε Φφ⌠ΦΩ±φ√Θ ε∩σ≡α≥ε≡ ∩σ≡σαΣ≡σ±α÷ΦΦ. ┼±δΦ ±∩≡αΓα ε≥ φσπε ±≥εΦ≥ [...] ΦδΦ {...} Γ√≡αµσφΦσ, ≥ε ∩≡αΓα ≈α±≥ⁿ ∞εµσ≥ ß√≥ⁿ φσ∩ε±≡σΣ±≥ΓσφφεΘ ΦδΦ ±Φ∞ΓεδΦ≈σ±ΩεΘ ±±√δΩεΘ φα ∞α±±ΦΓ ΦδΦ ⌡σ°. ┬ ∩≡ε≥ΦΓφε∞ ±δ≤≈ασ ∩≡αΓα ±≥ε≡εφα ²≥ε ∞σ≥εΣ ΦδΦ ∩≡ε±≥εΘ ±Ωαδ ≡, ±εΣσ≡µα∙ΦΘ Φ∞ ∞σ≥εΣα, α ∩≡αΓα - ΦδΦ εß·σΩ≥ ΦδΦ Φ∞ Ωδα±±α. ╧εΣ≡εßφε ±∞ε≥≡Φ πδαΓ≤ ╩δα±±√.
╬∩σ≡α≥ε≡√ ++ (ΦφΩ≡σ∞σφ≥) Φ -- (ΣσΩ≡σ∞σφ≥).
▌≥Φ ε∩σ≡α≥ε≡√ ≡αßε≥α■≥ ≥αΩ µσ ΩαΩ Φ Γ ╤. ┼±δΦ ε∩σ≡α≥ε≡ ±≥εΦ≥ ∩σ≡σΣ ∩σ≡σ∞σφφεΘ, ≥ε τφα≈σφΦσ ∩σ≡σ∞σφφεΘ Φτ∞σφ σ≥± φα 1 Φ ∩εδ≤≈σφφεσ τφα≈σφΦσ Φ±∩εδⁿτ≤σ≥± . ┼±δΦ ∩ε±δσ ∩σ≡σ∞σφφεΘ - ≥ε σσ ΓσδΦ≈Φφα Φτ∞σφ σ≥± ∩ε±δσ ∩≡Φ∞σφσφΦ .
╙∩ε≥≡σßδσφΦσ ΦφΩ≡σ∞σφ≥α Ω ±≥≡εΩεΓ√∞ ∩σ≡σ∞σφφ√∞ Γ Perl Φ∞σσ≥ εΣφ≤ ε±εßσφφε±≥ⁿ. ╩αµΣ√Θ ±Φ∞Γεδ ε±≥ασ≥± Γ ±Γεσ∞ Ωδα±±σ (ßεδⁿ°Φσ, ∞αδ√σ, ÷Φ⌠≡√) Φ ≤≈Φ≥√Γασ≥± ∩σ≡σφε± ∩≡σΣ√Σ≤∙σπε ±Φ∞Γεδα. ╥αΩΦ∞ εß≡ατε∞ ±≥≡εΩεΓ√σ ∩σ≡σ∞σφφ√σ ± ÷Φ⌠≡α∞Φ ≡αßε≥α■≥ ΩαΩ ≈Φ±δεΓ√σ ∩σ≡σ∞σφφ√σ.
╧≡Φ∞σ≡:
print ++($i = "09"); # ╨στ≤δⁿ≥α≥ "10" print ++($i = "a9"); # "b0" print ++($i = "az"); # "ba" print ++($i = "aZ"); # "bA"
╬∩σ≡α≥ε≡ ** (ΓετΓσΣσφΦσ Γ ±≥σ∩σφⁿ)
╧≡Φ∞σ≡:
print 4**2 # ╨στ≤δⁿ≥α≥ 16 print -4**2 # ╨στ≤δⁿ≥α≥ -16 ≥.σ. -(4**2)
'!' | - δεπΦ≈σ±Ωεσ ε≥≡Φ÷αφΦσ |
'-' | - α≡Φ⌠∞σ≥Φ≈σ±ΩΦΘ ∞Φφ≤± |
'~' | - ∩εßΦ≥φα ΦφΓσ≡±Φ (Σε∩εδφσφΦσ Σε 1) |
'+' | - α≡Φ⌠∞σ≥Φ≈σ±ΩΦΘ ∩δ■± |
'\' | - ∩εδ≤≈σφΦσ ±±√δΩΦ φα ∩σ≡σ∞σφφ≤■ (ΩαΩ & Γ ╤) |
╬∩σ≡α≥ε≡√ "∩≡ΦΓ τΩΦ" =~ Φ != .
▌≥Φ "φσεß√≈φ√σ", ß√ Σαµσ ±Ωαταδ, ε≡ΦπΦφαδⁿφ√σ ε∩σ≡α≥ε≡√ Φ∞σ■≥ ε≈σφⁿ °Φ≡εΩεσ ∩≡Φ∞σφσφΦσ Γ Perl. ╠εµφε Σαµσ φατΓα≥ⁿ Φ⌡ "ε≡ΦπΦφαδⁿφ√∞" ≡σ°σφΦσ∞. ╬∩σ≡α≥ε≡ =~ δεπΦ≈σ±ΩΦ ±Γ τ√Γασ≥ δσΓ≤■ ≈α±≥ⁿ Γ√≡αµσφΦ ± ∩α≥σ≡φε∞ (pattern - εß≡ατσ÷, °αßδεφ, ∞εΣσδⁿ) Γ ∩≡αΓεΘ. ╧ε ≤∞εδ≈αφΦ■ ∩εΦ±Ω ΦδΦ Φτ∞σφσφΦσ ∩ε ∩α≥σ≡φ≤ Γ√∩εδφ σ≥± Γ ∩σ≡σ∞σφφεΘ $_ ╬∩σ≡α≥ε≡√ ∩≡ΦΓ τΩΦ ∩ετΓεδ ■≥ Σσδα≥ⁿ ²≥ε ± δ■ßεΘ ∩σ≡σ∞σφφεΘ, ≤ΩαταφφεΘ Γ δσΓεΘ ≈α±≥Φ. ╦επΦ≈σ±ΩΦ∞ ≡στ≤δⁿ≥α≥ε∞ ß≤Σσ≥ ≤±∩σ⌡ ε∩σ≡α÷ΦΦ. ┼±δΦ Γ ∩≡αΓεΘ ≈α±≥Φ Γ∞σ±≥ε ∩α≥σ≡φα ∩≡Φ±≤≥±≥Γ≤σ≥ Γ√≡αµσφΦσ, ≥ε ≡στ≤δⁿ≥α≥ ²≥επε Γ√≡αµσφΦ Γε±∩≡ΦφΦ∞ασ≥± ΩαΩ ∩α≥σ≡φ. ╬ΣφαΩε ²≥ε φσ ε≈σφⁿ ²⌠⌠σΩ≥ΦΓφε, ≥.Ω. ∩α≥σ≡φ ß≤Σσ≥ Ωε∞∩ΦδΦ≡εΓα≥ⁿ± Γε Γ≡σ∞ Φ±∩εδφσφΦ ∩≡επ≡α∞∞√, ≈≥ε τα∞σ≥φε ±φΦτΦ≥ ß√±≥≡εΣσΘ±≥ΓΦσ. ╬∩σ≡α≥ε≡ != αφαδεπΦ≈σφ =~, ≥εδⁿΩε ≡στ≤δⁿ≥α≥ ±εΓ∩αΣσφΦ ΦφΓσ≡≥Φ≡≤σ≥± (δεπΦ≈σ±Ωεσ "φσ≥"). ╧εΣ≡εßφεσ ∩≡Φ∞σφσφΦσ ²≥Φ⌡ ε∩σ≡α≥ε≡εΓ ∩≡ΦΓεΣΦ≥± Γ πδαΓσ ╧α≥σ≡φ√.
'*' | - α≡Φ⌠∞σ≥Φ≈σ±Ωεσ ≤∞φεµσφΦσ |
'/' | - α≡Φ⌠∞σ≥Φ≈σ±Ωεσ ΣσδσφΦσ |
'%' | - α≡Φ⌠∞σ≥Φ≈σ±ΩΦΘ ∞εΣ≤δⁿ |
'x' | - ε∩σ≡α≥ε≡ ∩εΓ≥ε≡σφΦ |
┬ ±Ωαδ ≡φε∞ Ωεφ≥σΩ±≥σ ΓετΓ≡α∙ασ≥ ±≥≡εΩ≤ δσΓεΘ ≈α±≥Φ, ∩εΓ≥ε≡σφφ≤■ ΓσδΦ≈ΦφεΘ, ≤ΩαταφφεΘ Γ ∩≡αΓεΘ ≈α±≥Φ. ┬ ±∩Φ±ΩεΓε∞ Ωεφ≥σΩ±≥σ, σ±δΦ Γ δσΓεΘ ≈α±≥Φ ±∩Φ±εΩ, ≥ε Γ Ω≡≤πδ√⌡ ±ΩεßΩα⌡ - ∩εΓ≥ε≡σφφ√Θ ±∩Φ±εΩ.
╧≡Φ∞σ≡:
print '*' x 5; # ╨στ≤δⁿ≥α≥ '*****' print (1,2) x 3; # ╨στ≤δⁿ≥α≥ 121212
'+' | - α≡Φ⌠∞σ≥Φ≈σ±ΩΦΘ ∩δ■± |
'-' | - α≡Φ⌠∞σ≥Φ≈σ±ΩΦΘ ∞Φφ≤± |
'.' | - ΩεφΩα≥σφα÷Φ (εß·σΣΦφσφΦσ) ±≥≡εΩ |
'<<' | - ╤ΣΓΦπασ≥ ∩εßΦ≥φε ΓδσΓε τφα≈σφΦσ Γ√≡αµσφΦ Γ δσΓεΘ ≈α±≥Φ |
φα ΩεδΦ≈σ±≥Γε ßΦ≥ ≤Ωαταφφεσ Γ ∩≡αΓεΘ. | |
'>>' | - ╤ΣΓΦπασ≥ ∩εßΦ≥φε Γ∩≡αΓε τφα≈σφΦσ Γ√≡αµσφΦ Γ δσΓεΘ ≈α±≥Φ |
φα ΩεδΦ≈σ±≥Γε ßΦ≥ ≤Ωαταφφεσ Γ ∩≡αΓεΘ. |
╚∞σφεΓαφφ√σ ≤φα≡φ√σ ε∩σ≡α≥ε≡√.
╘αΩ≥Φ≈σ±ΩΦ ²≥ε ⌠≤φΩ÷ΦΦ ± εΣφΦ∞ α≡π≤∞σφ≥ε∞. ╩≡≤πδ√σ ±ΩεßΩΦ ∞εµφε ε∩≤±Ωα≥ⁿ.
'<' | - α≡Φ⌠∞σ≥Φ≈σ±Ωεσ ∞σφⁿ°σ |
'>' | - α≡Φ⌠∞σ≥Φ≈σ±Ωεσ ßεδⁿ°σ |
'<=' | - α≡Φ⌠∞σ≥Φ≈σ±Ωεσ ∞σφⁿ°σ ΦδΦ ≡αΓφε |
'>=' | - α≡Φ⌠∞σ≥Φ≈σ±Ωεσ ßεδⁿ°σ ΦδΦ ≡αΓφε |
'lt' | - ±≥≡εΩεΓεσ ∞σφⁿ°σ |
'gt' | - ±≥≡εΩεΓεσ ßεδⁿ°σ |
'le' | - ±≥≡εΩεΓεσ ∞σφⁿ°σ ΦδΦ ≡αΓφε |
'ge' | - ±≥≡εΩεΓεσ ßεδⁿ°σ ΦδΦ ≡αΓφε |
'==' | ≡στ≤δⁿ≥α≥ true σ±δΦ δσΓα ≈α±≥ⁿ ≡αΓφα ∩≡αΓεΘ (≡αΓφε) |
'!=' | - φσ ≡αΓφε |
'<=>' | - -1 σ±δΦ δσΓα ≈α±≥ⁿ ∞σφⁿ°σ ∩≡αΓεΘ, 0 σ±δΦ ≡αΓφα, |
1 σ±δΦ ßεδⁿ°σ. | |
'eq' | - ±≥≡εΩεΓεσ ≡αΓφε |
'ne' | - ±≥≡εΩεΓεσ φσ ≡αΓφε |
'cmp' | - ΩαΩ Φ '<=>' ∩≡Φ∞σφΦ≥σδⁿφε Ω ±≥≡εΩα∞ |
'&' | - ∩εßΦ≥φεσ AND |
'|' | - ∩εßΦ≥φεσ OR |
'^' | - ∩εßΦ≥φεσ XOR |
╦επΦ≈σ±ΩΦσ ε∩σ≡α≥ε≡√ && (AND) Φ || (OR).
'&&' | - σ±δΦ δσΓεσ Γ√≡αµσφΦσ ΓετΓ≡α∙ασ≥ false, ∩≡αΓεσ φσ Γ√∩εδφ σ≥± . |
'||' | - σ±δΦ δσΓεσ Γ√≡αµσφΦσ ΓετΓ≡α∙ασ≥ true, ∩≡αΓεσ φσ Γ√∩εδφ σ≥± . |
╬≥δΦ≈Φσ ε≥ ∩εΣεßφ√⌡ ε∩σ≡α≥ε≡εΓ Γ ╤ ταΩδ■≈ασ≥± Γ ≥ε∞, ≈≥ε Γ ╤ ΓετΓ≡α∙ασ∞εσ τφα≈σφΦσ δΦßε 0, δΦßε 1, ≥επΣα ΩαΩ Γ Perl ΓετΓ≡α∙ασ≥± ≡στ≤δⁿ≥α≥ Γ√≡αµσφΦ .
╨στ≤δⁿ≥α≥ ≡αßε≥√ Σαφφεπε ε∩σ≡α≥ε≡α ταΓΦ±Φ≥ ε≥ Ωεφ≥σΩ±≥α. ┬ ±∩Φ±ΩεΓε∞ Ωεφ≥σΩ±≥σ ≡στ≤δⁿ≥α≥ σ±≥ⁿ ±∩Φ±εΩ ± ²δσ∞σφ≥α∞Φ, ∩σ≡Γ√Θ ²δσ∞σφ≥ Ωε≥ε≡επε ²≥ε δσΓεσ Γ√≡αµσφΦσ Φ ∩ε±δσΣφσσ - ∩≡αΓεσ. ╟φα≈σφΦσ ΩαµΣεπε ²δσ∞σφ≥α Γφ≤≥≡Φ ±∩Φ±Ωα ≤ΓσδΦ≈ΦΓασ≥± φα 1. ─αφφ√Θ ε∩σ≡α≥ε≡ ≤Σεßσφ Σδ φσßεδⁿ°Φ⌡ ÷ΦΩδεΓ, ≥.Ω. ∩α∞ ≥ⁿ ε≥ΓεΣΦ≥± Σδ Γ±σπε ±∩Φ±Ωα ÷σδΦΩε∞. ╧ε²≥ε∞≤ ß≤Σⁿ≥σ ΓφΦ∞α≥σδⁿφ√ Φ φσ ταΣαΓαΘ≥σ ±δΦ°Ωε∞ ßεδⁿ°εΘ ΣΦα∩ατεφ.
╧≡Φ∞σ≡:
for $i (1..4) { print "$i "; }╨στ≤δⁿ≥α≥: 1 2 3 4
┬ ±Ωαδ ≡φε∞ Ωεφ≥σΩ±≥σ ≡στ≤δⁿ≥α≥ - δεπΦ≈σ±Ωεσ τφα≈σφΦσ. ╩αµΣα '..' ε∩σ≡α÷Φ ≤±≥αφαΓδΦΓασ≥ ±Γεσ ±εß±≥Γσφφεσ ±ε±≥ε φΦσ. ▌≥ε false Σε ≥σ⌡ ∩ε≡ ∩εΩα δσΓ√Θ ε∩σ≡αφΣ false. ╩αΩ ≥εδⁿΩε δσΓ√Θ ε∩σ≡αφΣ ±≥αδ true ≡στ≤δⁿ≥α≥ - true Σε ≥σ⌡ ∩εΩα ∩≡αΓ√Θ true, ∩ε±δσ ≈σπε ≡στ≤δⁿ≥α≥ ε∩ ≥ⁿ - false. ┼±δΦ Γ√ φσ ⌡ε≥Φ≥σ ∩≡εΓσ≡ ≥ⁿ ∩≡αΓ√Θ ε∩σ≡αφΣ, ≥ε Φ±∩εδⁿτ≤Θ≥σ ε∩σ≡α≥ε≡ '...'.
╧≡αΓ√Θ ε∩σ≡αφΣ φσ Γ√≈Φ±δ σ≥± ∩εΩα ≡στ≤δⁿ≥α≥ false Φ δσΓ√Θ ε∩σ≡αφΣ φσ Γ√≈Φ±δ σ≥± ∩εΩα ≡στ≤δⁿ≥α≥ true. ╧≡Φε≡Φ≥σ≥φε±≥ⁿ ε∩σ≡α≥ε≡α '..' φσ∞φεπε φΦµσ ≈σ∞ '&&' Φ '||'. ┬ετΓ≡α∙ασ∞εσ τφα≈σφΦσ σ±δΦ flase - φ≤δσΓα ±≥≡εΩα, σ±δΦ true - ∩ε≡ ΣΩεΓ√Θ φε∞σ≡ φα≈Φφα ± 1. ╧ε≡ ΣΩεΓ√Θ φε∞σ≡ εßφ≤δ σ≥± Σδ ΩαµΣεπε φεΓεπε ΣΦα∩ατεφα. ╧ε±δσΣφΦΘ ∩ε≡ ΣΩεΓ√Θ φε∞σ≡ ΣεßαΓδ σ≥± ±≥≡εΩεΘ "E0" Ωε≥ε≡α φσ Φτ∞σφ σ≥ σπε τφα≈σφΦσ, φε ∩ετΓεδ σ≥ ⌠ΦΩ±Φ≡εΓα≥ⁿ ∩ε±δσΣφσσ τφα≈σφΦσ.
╧≡Φ∞σ≡:
@αδ⌠αΓΦ≥ = ('a'..'z'); # ╠α±±ΦΓ ∞αδ√⌡ ß≤ΩΓ δα≥Φφ±Ωεπε αδ⌠αΓΦ≥α @÷Φ⌠≡√ = (0..9); # ╠α±±ΦΓ ÷Φ⌠≡
▌≥ε≥ ε∩σ≡α≥ε≡ ≡αßε≥ασ≥ ≥αΩ µσ ΩαΩ Φ Γ ╤. ┼±δΦ Γ√≡αµσφΦσ ∩σ≡σΣ '?' Φ±≥Φφφε, ≥ε Γ√∩εδφ σ≥± α≡π≤∞σφ≥ ∩σ≡σΣ ':' - Φφα≈σ ∩ε±δσ ':'.
╧≡Φ∞σ≡:
$i = 1; $i > 1 ? print "ßεδⁿ°σ" : print "∞σφⁿ°σ";╨στ≤δⁿ≥α≥: ∞σφⁿ°σ
'=' | - εß√≈φ√Θ ε∩σ≡α≥ε≡ "∩≡Φ±ΓεΦ≥ⁿ" ∩≡αΓεσ τφα≈σφΦσ ∩σ≡σ∞σφφεΘ ±δσΓα |
$i += 2;²ΩΓΦΓαδσφ≥φε
$i = $i + 2;
╬±≥αδⁿφ√σ ε∩σ≡α≥ε≡√ ²≥εΘ π≡≤∩∩√ ≡αßε≥α■≥ αφαδεπΦ≈φε. ─ε∩≤±≥Φ∞√ ±δσΣ≤■∙Φσ ε∩σ≡α≥ε≡√:
**= |
+=, -=, .= |
*=, /=, %=, x= |
&=, |=, ^= |
<<=, >>= |
&&=, ||= |
╧≡Φε≡Φ≥σ≥ Γ±σΘ ²≥εΘ π≡≤∩∩√ ε∩σ≡α≥ε≡εΓ ≡αΓσφ ∩≡Φε≡Φ≥σ≥≤ '='.
┬ ±Ωαδ ≡φε∞ Ωεφ≥σΩ±≥σ Γ√∩εδφ σ≥± δσΓ√Θ α≡π≤∞σφ≥, ≡στ≤δⁿ≥α≥ Φπφε≡Φ≡≤σ≥± , τα≥σ∞ ∩≡αΓ√Θ Φ σπε ≡στ≤δⁿ≥α≥ σ±≥ⁿ ≡στ≤δⁿ≥α≥ ΣσΘ±≥ΓΦ ε∩σ≡α≥ε≡α. ┬ ±∩Φ±ΩεΓε∞ Ωεφ≥σΩ±≥σ ²≥ε ≡ατΣσδΦ≥σδⁿ ²δσ∞σφ≥εΓ ±∩Φ±Ωα, Ωε≥ε≡√Θ ΓΩδ■≈ασ≥ ≤Ωαταφφ√σ ²δσ∞σφ≥√ Γ ±∩Φ±εΩ.
╬∩σ≡α≥ε≡ δεπΦ≈σ±Ωεσ not (ε≥≡Φ÷αφΦσ).
╙φα≡φ√Θ not ΓετΓ≡α∙ασ≥ ∩≡ε≥ΦΓε∩εδεµφεσ τφα≈σφΦσ, ∩εδ≤≈σφφεσ Γ√≡αµσφΦσ∞
±∩≡αΓα. ╬φ ²ΩΓΦΓαδσφ≥σφ '!', φε Φ∞σσ≥ ε≈σφⁿ φΦτΩΦΘ ∩≡Φε≡Φ≥σ≥.
╬∩σ≡α≥ε≡ δεπΦ≈σ±Ωεσ and (╚).
┬√∩εδφ σ≥ δεπΦ≈σ±Ω≤■ Ωεφ·■φΩ÷Φ■ ΣΓ≤⌡ Γ√≡αµσφΦΘ. ▌ΩΓΦΓαδσφ≥σφ '&&',
φε Φ∞σσ≥ ε≈σφⁿ φΦτΩΦΘ ∩≡Φε≡Φ≥σ≥ Φ "Ω≡α≥Ωε±≥ⁿ" ΣσΘ±≥ΓΦ , ≥. σ.
σ±δΦ δσΓεσ Γ√≡αµσφΦσ ≡αΓφε false - δσΓεσ φσ Γ√∩εδφ σ≥± .
╦επΦ≈σ±Ωεσ or (╚╦╚).
┬√∩εδφ σ≥ δεπΦ≈σ±Ω≤■ ΣΦτ·■φΩ÷Φ■ ΣΓ≤⌡ Γ√≡αµσφΦΘ. ▌ΩΓΦΓαδσφ≥σφ '||',
φε Φ∞σσ≥ ε≈σφⁿ φΦτΩΦΘ ∩≡Φε≡Φ≥σ≥ Φ "Ω≡α≥Ωε±≥ⁿ" ΣσΘ±≥ΓΦ , ≥. σ.
σ±δΦ δσΓεσ Γ√≡αµσφΦσ ≡αΓφε true - δσΓεσ φσ Γ√∩εδφ σ≥± .
╦επΦ≈σ±Ωεσ xor (Φ±Ωδ■≈α■∙σσ ╚╦╚).
┬√∩εδφ σ≥ δεπΦ≈σ±Ωεσ Φ±Ωδ■≈α■∙Φσ ΦδΦ. ┬±σπΣα Γ√∩εδφ ■≥± εßα
∩≡αΓεσ Φ δσΓεσ Γ√≡αµσφΦσ.
┬ Perl ε≥±≤≥±≥Γ≤■≥ ε∩σ≡α≥ε≡√ τ√Ωα ╤ ≥αΩΦσ ΩαΩ:
≤φα≡φεσ & | - ∩εδ≤≈Φ≥ⁿ αΣ≡σ±. ─δ ²≥επε ∩≡Φ∞σφ σ≥± '\'. |
≤φα≡φ√Θ * | - ∩σ≡σαΣ≡σ±α÷Φ . |
(TYPE) | - ±εΓ∞σ∙σφΦσ ≥Φ∩εΓ. |
╬ß√≈φε επ≡αφΦ≈Φ≥σδ ∞Φ ±≥≡εΩ ∞√ ±≈Φ≥ασ∞ δΦ≥σ≡αδ√, φε Γ Perl ²≥ε ε∩σ≡α≥ε≡√ Γ√∩εδφ ■∙Φσ ≡ατφεπε ≡εΣα Φφ≥σ≡∩εδ ÷Φ■ Φ ∩εΦ±Ω ∩ε °αßδεφ≤. ┬√ ∞εµσ≥σ ±α∞Φ ταΣαΓα≥ⁿ ≤Σεßφ√σ Σδ Γα± επ≡αφΦ≈Φ≥σδΦ. ┬ ±δσΣ≤■∙σΘ ≥αßδΦ÷σ ∩≡ΦΓσΣσφ ∩εδφ√Θ ∩σ≡σ≈σφⁿ Γα≡Φαφ≥εΓ. ╘Φπ≤≡φ√σ ±ΩεßΩΦ '{}' εßετφα≈α■≥ δ■ßεΘ ±Φ∞Γεδ, Φ±∩εδⁿτ≤σ∞√Θ Σδ επ≡αφΦ≈Φ≥σδ . ┬ ±δ≤≈ασ Φ±∩εδⁿτεΓαφΦ ±ΩεßεΩ (Ω≡≤πδ√⌡ '()', ΩΓαΣ≡α≥φ√⌡ '[]', ⌠Φπ≤≡φ√⌡ '{}', ≤πδεΓ√⌡ '<>') Γ φα≈αδσ ±≥αΓΦ≥± ε≥Ω≡√Γα■∙α ± ±ΩεßΩα, α Γ Ωεφ÷σ ταΩ≡√Γα■∙α .
╧ε ≤∞εδ≈αφΦ■ | ╧εδφεσ | ╘≤φΩ÷Φ | ╚φ≥σ≡∩εδ ÷Φ |
---|---|---|---|
'' | q{} | Literal | φσ≥ |
"" | qq{} | ╦Φ≥σ≡αδ | Σα |
`` | qx{} | ╩ε∞αφΣα | Σα |
qw{} | ╤∩Φ±εΩ ±δεΓ | φσ≥ | |
// | m{} | ╪αßδεφ | Σα |
s{}{} | ╧εΣ±≥αφεΓΩα | Σα | |
tr{}{} | ╥≡αφ±δ ÷Φ | φσ≥ |
┬ ±≥≡εΩα⌡ Σε∩≤±Ωα■∙Φ⌡ Φφ≥σ≡∩εδ ÷Φ■ Φ∞σφα ∩σ≡σ∞σφφ√⌡, φα≈Φφα■∙Φσ± ± ±Φ∞ΓεδεΓ '$' ΦδΦ '@' - Φφ≥σ≡∩εδΦ≡≤■≥± , ≥.σ. Γ ±≥≡εΩ≤ Γ±≥αΓδ σ≥± τφα≈σφΦσ ±≥≡εΩΦ ΦδΦ ∞α±±ΦΓα. ─αφφ√σ ∩ε±δσΣεΓα≥σδⁿφε±≥Φ ±Φ∞ΓεδεΓ Φ∞σ■≥ ±∩σ÷Φαδⁿφεσ τφα≈σφΦσ:
\t | ±Φ∞Γεδ ≥αß≤δ ÷ΦΦ |
\n | ±Φ∞Γεδ φεΓεΘ ±≥≡εΩΦ |
\r | ΓετΓ≡α≥ |
\f | ∩σ≡σΓεΣ ⌠ε≡∞α≥α |
\v | Γσ≡≥ΦΩαδⁿφα ≥αß≤δ ÷Φ |
\b | backspace (ταßεΘ) |
\a | τΓεφεΩ |
\e | escape |
\034 | Γε±ⁿ∞σ≡Φ≈φ√Θ ±Φ∞Γεδ |
\x1a | °σ±≥φαΣ÷α≥σ≡Φ≈φ√Θ ±Φ∞Γεδ |
\c[ | ±Φ∞Γεδ ≤∩≡αΓδσφΦ |
\l | φΦµφΦΘ ≡σπΦ±≥≡ ±δσΣ≤■∙σπε ±Φ∞Γεδα |
\u | Γσ≡⌡φΦΘ ≡σπΦ±≥≡ ±δσΣ≤■∙σπε ±Φ∞Γεδα |
\L | φΦµφΦΘ ≡σπΦ±≥≡ Σδ Γ±σ⌡ ±Φ∞ΓεδεΓ Σε \E |
\U | Γσ≡⌡φΦΘ ≡σπΦ±≥≡ Σδ Γ±σ⌡ ±Φ∞ΓεδεΓ Σε \E |
\E | επ≡αφΦ≈Φ≥σδⁿ ±∞σφ√ ≡σπΦ±≥≡α |
\Q | ε≥∞σφα ΣσΘ±≥ΓΦ ∞σ≥α±Φ∞ΓεδεΓ Σε \E |
╪αßδεφ√ Φφ≥σ≡∩εδΦ≡≤■≥± ΩαΩ ≡σπ≤δ ≡φ√σ Γ√≡αµσφΦ . ▌≥ε Γ√∩εδφ σ≥± Γ≥ε≡√∞ ∩≡ε⌡εΣε∞ ∩ε±δσ Φφ≥σ≡∩εδ ÷ΦΦ ∩σ≡σ∞σφφ√⌡, ∩ε²≥ε∞≤ Γ °αßδεφ√ ∞εµφε Γ±≥αΓδ ≥ⁿ ∩σ≡σ∞σφφ√σ. ─δ ε≥∞σφ√ Φφ≥σ≡∩εδ ÷ΦΦ Φ±∩εδⁿτ≤Θ≥σ '\Q'. ┼±δΦ Γ√ ∩≡Φ∞σφ σ≥σ Γδεµσφφ√σ επ≡αφΦ≈Φ≥σδΦ, ≥ε Γφ≤≥≡σφφΦσ επ≡αφΦ≈Φ≥σδΦ ≡αßε≥α≥ⁿ φσ ß≤Σ≤≥.
─σΘ±≥ΓΦσ ²≥επε ε∩σ≡α≥ε≡α αφαδεπΦ≈φε /°αßδεφ/, φε Γ√∩εδφ σ≥± Σε ∩σ≡Γεπε ±εΓ∩αΣσφΦ . ▌≥ε ≤Σεßφε Σδ ∩εΦ±Ωα φαδΦ≈Φ ΩαΩεΘ-φΦß≤Σⁿ ±≥≡εΩΦ Γ εΣφε∞ ΦδΦ ∞φεµσ±≥Γσ ⌠αΘδεΓ. ▌≥ε φσ ε≈σφⁿ ≤Σα≈φ√Θ ε∩σ≡α≥ε≡, ∩ε²≥ε∞≤ Γ ±δσΣ≤■∙Φ⌡ Γσ≡±Φ ⌡ Perl σπε Γετ∞εµφε φσ ß≤Σσ≥.
m/PATERN/gimosx
/PATERN/gimosx
╧εΦ±Ω Γ ±≥≡εΩσ ∩ε ∩α≥σ≡φ≤ (°αßδεφ≤). ┬ ±Ωαδ ≡φε∞ Ωεφ≥σΩ±≥σ ΓετΓ≡α∙ασ≥ δεπΦ≈σ±Ωεσ τφα≈σφΦσ true (1) ΦδΦ false (''). ┼±δΦ ±≥≡εΩα φσ ≤Ωαταφα ± ∩ε∞ε∙ⁿ■ ε∩σ≡α≥ε≡εΓ '=~' ΦδΦ '!~', ∩εΦ±Ω ΓσΣσ≥± Γ ±≥≡εΩσ $_ ╬∩÷ΦΦ:
g | - ├δεßαδⁿφ√Θ ∩εΦ±Ω. ╧εΦ±Ω Γ±σ⌡ Γ⌡εµΣσφΦΘ. |
i | - ╤≡αΓφσφΦσ φσ ταΓΦ±Φ≥ ε≥ ≡σπΦ±≥≡α (Γσ≡⌡φΦΘ ΦδΦ φΦµφΦΘ) |
m | - ╤≥≡εΩα ∞φεπε±≥≡ε≈φα . |
o | - εΣφε∩≡ε⌡εΣφα Ωε∞∩Φδ ÷Φ |
s | - εΣφε±≥≡ε≈φα ±≥≡εΩα |
x | - Φ±∩εδⁿτ≤■≥± ≡α±°Φ≡σφφ√σ ≡σπ≤δ ≡φ√σ Γ√≡αµσφΦ . |
┼±δΦ '/' - επ≡αφΦ≈Φ≥σδⁿ, ≥ε φα≈αδⁿφεσ 'm' ∞εµφε ε∩≤±≥Φ≥ⁿ. ╤ ∩ε∞ε∙ⁿ■ φσπε Γ Ωα≈σ±≥Γσ επ≡αφΦ≈Φ≥σδ ∞εµσ≥ ß√≥ⁿ δ■ßεΘ ±Φ∞Γεδ Ω≡ε∞σ ∩≡εßσδα.
PATTERN ∞εµσ≥ ±εΣσ≡µα≥ⁿ ∩σ≡σ∞σφφ√σ, Ωε≥ε≡√σ ß≤Σ≤≥ Φφ≥σ≡∩εδΦ≡εΓα≥ⁿ± (∩σ≡σΩε∞∩ΦδΦ≡εΓα≥ⁿ± ) ΩαµΣ√Θ ≡ατ Γ ∞ε∞σφ≥ Γ√≈Φ±δσφΦ . ╧σ≡σ∞σφφ√σ $) Φ $| φσ Φφ≥σ≡∩εδΦ≡≤■≥± . ┼±δΦ Γ√ ⌡ε≥Φ≥σ, ≈≥ε ß√ ≥αΩεΘ °αßδεφ Φφ≥σ≡∩εδΦ≡εΓαδ± εΣΦφ ≡ατ - ΣεßαΓⁿ≥σ /o. ▌≥ε φσεß⌡εΣΦ∞ε Σσδα≥ⁿ Γ ÷ΦΩδα⌡ ∩εΦ±Ωα Σδ ≤ΓσδΦ≈σφΦ ß√±≥≡εΣσΘ±≥ΓΦ , εΣφαΩε, σ±δΦ Γ√ Φτ∞σφΦ≥σ τφα≈σφΦσ ∩σ≡σ∞σφφεΘ, Perl ²≥επε Σαµσ φσ τα∞σ≥Φ≥.
┼±δΦ PATERN - φ≤δσΓα ±≥≡εΩα, ≥ε Φ±∩εδⁿτ≤σ≥± ∩ε±δσΣφσσ ≡σπ≤δ ≡φεσ Γ√≡αµσφΦσ.
┬ ±Ωαδ ≡φε∞ Ωεφ≥σΩ±≥σ ΓετΓ≡α∙ασ≥± ±∩Φ±εΩ ²δσ∞σφ≥√ Ωε≥ε≡επε - ≡στ≤δⁿ≥α≥√ Γ√∩εδφσφΦ Γ√≡αµσφΦΘ Γ ±ΩεßΩα⌡ ∩α≥σ≡φα ($1, $2, $3...). ╬ß≡α≥Φ≥σ ΓφΦ∞αφΦσ ≈≥ε ∩σ≡Γ√Θ ²δσ∞σφ≥ $1.
╧≡Φ∞σ≡:
$a = "/usr/local/perl/perl.bin"; # └φαδΦτΦ≡≤σ∞α ±≥≡εΩα╓σδⁿ: ╤ετΣα≥ⁿ ∞α±±ΦΓ @dirs ± Φ∞σφα∞Φ ΣΦ≡σΩ≥ε≡ΦΘ.
@dirs =~ m[/(\w*)/(\w*)/(\w*)/(\w*)]╟Σσ±ⁿ 'm[' - Φ±∩εδⁿτεΓα≥ⁿ ΩΓαΣ≡α≥φ√σ ±ΩεßΩΦ ΩαΩ επ≡αφΦ≈Φ≥σδΦ. (\w*)- °αßδεφ αδ⌠αΓΦ≥φε-÷Φ⌠≡εΓεΘ ∩ε±δσΣεΓα≥σδⁿφε±≥Φ.
q/±≥≡εΩα/
'±≥≡εΩα'
╤≥≡εΩα δΦ≥σ≡αδεΓ. ═σ Φφ≥σ≡∩εδΦ≡≤σ≥± . ┬φ≤≥≡Φ ±≥≡εΩΦ ≡ατ≡σ°ασ≥± Φ±∩εδⁿτεΓα≥ⁿ \' ΦδΦ \\ Σδ εßετφα≈σφΦ ±Φ∞ΓεδεΓ ' Φ \ .
╧≡Φ∞σ≡:
print q#╧≡ΦΓσ≥.#; # ╨στ≤δⁿ≥α≥ ╧≡ΦΓσ≥. print 'O\'K'; # O'K
qq/±≥≡εΩα/
"±≥≡εΩα"
╚φ≥σ≡∩εδΦ≡≤σ∞α ±≥≡εΩα.
╧≡Φ∞σ≡:
$var = 13; print "\$var = $var";╨στ≤δⁿ≥α≥: $var = 13
qx/±≥≡εΩα/
`±≥≡εΩα`
╤φα≈αδα ±≥≡εΩα Φφ≥σ≡∩εδΦ≡≤σ≥± , α ∩ε≥ε∞ Γ√∩εδφ σ≥± ΩαΩ ±Φ±≥σ∞φα Ωε∞αφΣα.
╧≡Φ∞σ≡:
print `date`;╨στ≤δⁿ≥α≥: Thu Nov 14 13:36:49 MSK 1996
qw/±≥≡εΩα/
┬ετΓ≡α∙ασ≥ ±∩Φ±εΩ, ²δσ∞σφ≥√ Ωε≥ε≡επε - ±δεΓα ±≥≡εΩΦ, ≡ατΣσδσφφ√σ ∩≡εßσδα∞Φ.
╧≡Φ∞σ≡:
print qw/╧ε±≥≡εΦ∞± Φ ±∩α±σ∞± !/; # ('╧ε±≥≡εΦ∞± ','Φ','±∩α±σ∞± !')╨στ≤δⁿ≥α≥:
╧ε±≥≡εΦ∞± Φ±∩α±σ∞± !╫α±≥ε ∩≡Φ∞σφ σ≥± ΩαΩ:
use POSIX qw( setlocale localeconv ) @EXPORT = qw( proc1 var );
s/°αßδεφ/∩εΣ±≥≡εΩα/egimosx
╧εΦ±Ω ∩ε °αßδεφ≤ Φ Γ ±δ≤≈ασ ≤±∩σ⌡α τα∞σφα ∩εΣ±≥≡εΩεΘ. ┬ετΓ≡α∙ασ≥ ΩεδΦ≈σ±≥Γε ∩≡εΦτΓσΣσφφ√⌡ ∩εΣ±≥αφεΓεΩ, Φφα≈σ false (0). ┼±δΦ ±≥≡εΩα Γ Ωε≥ε≡εΘ ΓσΣσ≥± ∩εΦ±Ω φσ ≤Ωαταφα (ε∩σ≡α≥ε≡√ =~ ΦδΦ != ), ≥ε Φ±∩εδⁿτ≤σ≥± ∩σ≡σ∞σφφα $_ . ┼±δΦ Γ Ωα≈σ±≥Γσ ≡ατΣσδΦ≥σδ '/' Φ±∩εδⁿτεΓα≥ⁿ εΣΦφα≡φ≤■ ΩαΓ√≈Ω≤ ('), ≥ε Φφ≥σ≡∩εδ ÷ΦΦ φσ ß≤Σσ≥, Φφα≈σ ∞εµφε ∩≡Φ∞σφ ≥ⁿ ∩σ≡σ∞σφφ√σ Γ °αßδεφσ ΦδΦ ∩εΣ±≥≡εΩσ.
╬∩÷ΦΦ:
e | - ╨α±±∞α≥≡ΦΓα≥ⁿ ∩≡αΓ≤■ ≈α±≥ⁿ ΩαΩ Γ√≡αµσφΦσ. |
g | - ├δεßαδⁿφ√Θ ∩εΦ±Ω. |
i | - ┴στ ≡ατδΦ≈Φ ≡σπΦ±≥≡α ß≤ΩΓ |
m | - ∞φεπε±≥≡ε≈φα ∩σ≡σ∞σφφα |
o | - Ωε∞∩ΦδΦ≡εΓα≥ⁿ °αßδεφ εΣΦφ ≡ατ |
s | - εΣφε±≥≡ε≈φα ∩σ≡σ∞σφφα |
x | - ≡α±°Φ≡σφφεσ ≡σπ≤δ ≡φεσ Γ√≡αµσφΦσ |
╨ατΣσδΦ≥σδⁿ '/' ∞εµφε τα∞σφΦ≥ⁿ φα δ■ßεΘ αδ⌠αΓΦ≥φε-÷Φ⌠≡εΓεΘ ±Φ∞Γεδ Ω≡ε∞σ ∩≡εßσδα.
╧≡Φ∞σ≡:
$var = "12345"; # Φ±⌡εΣφα ±≥≡εΩα $var =~ s/1/0/; # ╟α∞σφΦ≥ⁿ '1' φα '0'. ╨στ≤δⁿ≥α≥ 02345 $var =~ s(5)(.); # ╟α∞σφΦ≥ⁿ '5' φα '.' ╨στ≤δⁿ≥α≥ 0234.
╟Σσ±ⁿ Γ Ωα≈σ±≥Γσ ≡ατΣσδΦ≥σδ ∩≡Φ∞σφσφ√ ±ΩεßΩΦ, ∩ε²≥ε∞≤ ∩εΣ±≥≡εΩα Γτ ≥α Γ ΣΓσ ±ΩεßΩΦ.
$var =~ s/\d*/Ωαδα∞ß≤≡/; ╟α∞σφΦ≥ⁿ Γ±σ ÷Φ⌠≡√. ╨στ≤δⁿ≥α≥ 'Ωαδα∞ß≤≡.' $var =~ s/α/ε/g; # ╟α∞σφΦ≥ⁿ Γ±σ 'α' φα 'ε'. ╨στ≤δⁿ≥α≥ 'Ωεδε∞ß≤≡.' $var = "12 34"; # ═εΓεσ τφα≈σφΦσ $var =~ s/(\d\d) (\d\d)/$2 $1/; # ╧ε∞σφ ≥ⁿ ∞σ±≥α∞Φ ≈Φ±δα. ╨στ≤δⁿ≥α≥ '34 12'.
tr/≥αßδΦ÷α1/≥αßδΦ÷α2/cds
y/≥αßδΦ÷α1/≥αßδΦ÷α2/cds
╟α∞σφα Γ±σ⌡ ±Φ∞ΓεδεΓ Φτ "≥αßδΦ÷α1" φα ±εε≥Γσ≥±≥Γ≤■∙ΦΘ ±Φ∞Γεδ Φτ "≥αßδΦ÷α2". ╨στ≤δⁿ≥α≥ - ΩεδΦ≈σ±≥Γε τα∞σφ ΦδΦ ±≥Φ≡αφΦΘ. ┴στ ε∩σ≡α≥ε≡α =~ ΦδΦ != ε∩σ≡α÷Φ Γ√∩εδφ σ≥± ±ε ±≥≡εΩεΘ $_. ─δ ±εΓ∞σ±≥Φ∞ε±≥Φ ± ∩≡επ≡α∞∞εΘ sed Γ∞σ±≥ε tr ∞εµφε ∩Φ±α≥ⁿ 'y'.
╬∩÷ΦΦ:
c | - Σε∩εδφσφΦσ "≥αßδΦ÷α1" |
d | - ±≥σ≡σ≥ⁿ φαΘΣσφφ√σ, φε φσ τα∞σφσφφ√σ ±Φ∞Γεδ√. |
s | - "±µα≥ⁿ" ∩εΓ≥ε≡ ■∙Φσ± τα∞σφσφφ√σ ±Φ∞Γεδ√. |
┼±δΦ ≤Ωαταφα ε∩÷Φ /d ≥αßδΦ÷α2 Γ±σπΣα Φφ≥σ≡∩≡σ≥Φ≡≤σ≥± ΩαΩ ∩εδεµσφε. ─≡≤πΦ∞Φ ±δεΓα∞Φ, σ±δΦ ≥αßδΦ÷α2 Ωε≡ε≈σ, ≈σ∞ ≥αßδΦ÷α1, ≥ε ±Φ∞Γεδ Φτ ≥αßδΦ÷√1 Φφ≥σ≡∩≡σ≥Φ≡≤σ≥± Γ±σπΣα. ┼±δΦ ≥αßδΦ÷α2 - null, ≥ε Γ±σ ±Φ∞Γεδ√ ±≥≡εΩΦ ε±≥α■≥± φσΦτ∞σφφ√∞Φ. ▌≥ε ≤Σεßφε Σδ ∩εΣ±≈σ≥α ΩεδΦ≈σ±≥Γα ±Φ∞ΓεδεΓ Γ ±≥≡εΩσ ε∩≡σΣσδσφφεπε Ωδα±±α ΦδΦ Σδ ±µα≥Φ ∩εΓ≥ε≡ ■∙Φ⌡± ±Φ∞ΓεδεΓ, φα∩≡Φ∞σ≡, ∩≡εßσδεΓ.
╧≡Φ∞σ≡:
$s = "hello"; # ╚±⌡εΣφα ±≥≡εΩα $s =~ tr/a-z/A-Z/; # ╟α∞σφΦ≥ⁿ ∞αδ√σ ß≤ΩΓ√ φα ßεδⁿ°Φσ. ╨στ≤δⁿ≥α≥ # 'HELLO' $s = 'Hel....lo'; $s =~ tr/a-zA-z/_/c; # ╟α∞σφΦ≥ⁿ Γ±σ φσ ß≤ΩΓ√ φα '_' # ╨στ≤δⁿ≥α≥ 'Hel____lo' $s =~ tr/_/ /s; # ╟α∞σφΦ≥ⁿ '_' φα ' ' Φ ±µα≥ⁿ. # ╨στ≤δⁿ≥α≥ 'Hel lo' $s =~ tr/a-zA-Z /a-zA-Z/d; # ╙ΣαδΦ≥ⁿ Γ±σ φσ ß≤ΩΓ√. ╨στ≤δⁿ≥α≥ 'Hello'
┼±δΦ εΣΦφ Φ ≥ε≥ µσ ±Φ∞Γεδ φσ±ΩεδⁿΩε ≡ατ ≤Ωαταφ Γ ≥αßδΦ÷σ1, ≥ε ∩≡Φ∞σφ σ≥± ≥εδⁿΩε ∩σ≡Γα τα∞σφα.
┬ Perl ±≤∙σ±≥Γ≤σ≥ φσ±ΩεδⁿΩε ε∩σ≡α≥ε≡εΓ ΓΓεΣα-Γ√ΓεΣα. ╧σ≡Γ√Θ ²≥ε ±ΩεßΩΦ Φτ ±Φ∞Γεδα '`' - αΩ÷σφ≥α. ╤≥≡εΩα Γ ²≥Φ⌡ ±ΩεßΩα⌡ Γε±∩≡ΦφΦ∞ασ≥± ΩαΩ ±Φ±≥σ∞φα Ωε∞αφΣα Φ ≡στ≤δⁿ≥α≥ σσ ΣσΘ±≥ΓΦ ΓετΓ≡α∙ασ≥± ΩαΩ "∩±σΓΣε" δΦ≥σ≡αδ. ┬ ±Ωαδ ≡φε∞ Ωεφ≥σΩ±≥σ ²≥ε ±≥≡εΩα ±εΣσ≡µα∙α Γσ±ⁿ ≡στ≤δⁿ≥α≥, α Γ ±∩Φ±ΩεΓε∞ - ±∩Φ±εΩ, ²δσ∞σφ≥√ Ωε≥ε≡επε - ±≥≡εΩΦ ≡στ≤δⁿ≥α≥α. ╤≥α≥≤± Γ√∩εδφσφφεΘ Ωε∞αφΣ√ ⌡≡αφΦ≥± Γ ∩σ≡σ∞σφφεΘ $? .
╤δσΣ≤■∙α Ωε∞αφΣα ΓΓεΣα Γ√ΓεΣα Γ√πδ ΣΦ≥ ΩαΩ '<⌠αΘδ>'. ┬√≈Φ±δσφΦσ <⌠αΘδ> ∩≡ΦΓεΣΦ≥ Ω ≈≥σφΦ■ ±≥≡εΩΦ Φτ ⌠αΘδα. ╬ß≡α≥Φ≥σ ΓφΦ∞αφΦσ, ≈≥ε '⌠αΘδ' τΣσ±ⁿ φσ Φ∞ ⌠αΘδα, α ≤Ωατα≥σδⁿ ⌠αΘδα, Ωε≥ε≡√Θ ±ετΣασ≥± ⌠≤φΩ÷ΦσΘ open(). ┬ ±Ωαδ ≡φε∞ Ωεφ≥σΩ±≥σ ≈Φ≥ασ≥± εΣφα ±≥≡εΩα Γ∞σ±≥σ ± ±Φ∞Γεδε∞ '\n' - ∩σ≡σΓεΣα ±≥≡εΩΦ, α Γ ±∩Φ±ΩεΓε∞ Γσ±ⁿ ⌠αΘδ ≈Φ≥ασ≥± Γ ±∩Φ±εΩ, ²δσ∞σφ≥√ Ωε≥ε≡επε ±≤≥ⁿ ±≥≡εΩΦ ⌠αΘδα. ┬ ±δ≤≈ασ εßφα≡≤µσφΦ Ωεφ÷α ⌠αΘδα ≡στ≤δⁿ≥α≥ ε∩σ≡α≥ε≡α φσ ε∩≡σΣσδσφ Φ Γε±∩≡ΦφΦ∞ασ≥± ΩαΩ false. ┼±δΦ φσ ≤Ωαταφα ∩σ≡σ∞σφφα ≡στ≤δⁿ≥α≥α, ≥ε ∩ε ≤∞εδ≈αφΦ■ ²≥ε $_. ╙Ωατα≥σδⁿ ⌠αΘδα ∩ε ≤∞εδ≈αφΦ■ STDIN - ±≥αφΣα≡≥φ√Θ ΓΓεΣ.
╧≡Φ∞σ≡:
while(<>) { print; }; # ╧≡ε≈Φ≥α≥ⁿ Φ Γ√Γσ±≥Φ Γσ±ⁿ ⌠αΘδ STDIN
╙ ε∩σ≡α≥ε≡α '<>' σ±≥ⁿ εΣφα ε≥δΦ≈Φ≥σδⁿφα ε±εßσφφε±≥ⁿ. ┼±δΦ Γ Ωε∞αφΣφεΘ ±≥≡εΩσ φσ≥ φΦΩαΩΦ⌡ α≡π≤∞σφ≥εΓ, ≥ε ≈Φ≥ασ≥± ±≥αφΣα≡≥φ√Θ ΓΓεΣ, σ±δΦ σ±≥ⁿ α≡π≤∞σφ≥√, ≥ε εφΦ ±≈Φ≥α■≥± Φ∞σφα∞Φ ⌠αΘδεΓ, Ωε≥ε≡√σ ∩ε±δσΣεΓα≥σδⁿφε ≈Φ≥α■≥± .
┼±δΦ Γ ≤πδεΓ√⌡ ±ΩεßΩα⌡ τα∩Φ±αφα ∩σ≡σ∞σφφα , ≥ε ±εΣσ≡µΦ∞εσ ²≥εΘ ∩σ≡σ∞σφφεΘ ±≈Φ≥ασ≥± Φ∞σφσ∞ ≤Ωατα≥σδ ⌠αΘδα ΦδΦ ±±√δΩεΘ φα ≤Ωατα≥σδⁿ ⌠αΘδα. ┼±δΦ ≥αΩεπε ≤Ωατα≥σδ φσ ±≤∙σ±≥Γ≤σ≥, ≥ε ±εΣσ≡µΦ∞εσ ∩σ≡σ∞σφφεΘ Γε±∩≡ΦφΦ∞ασ≥± ΩαΩ °αßδεφ Φ∞σφ ⌠αΘδεΓ Φ ≡στ≤δⁿ≥α≥ - Φ∞σφα ⌠αΘδεΓ φα ΣΦ±Ωσ, ∩εΣ⌡εΣ ∙Φ⌡ ∩ε °αßδεφ≤.
╧≡Φ∞σ≡:
while(<*.pl>) { print;}; # ╥ε µσ ≈≥ε Φ ls *.pl @files = <*>; # ╠α±±ΦΓ @files ±εΣσ≡µΦ≥ Φ∞σφα ⌠αΘδεΓ Γ ΣΦ≡σΩ≥ε≡ΦΦφε δ≤≈°σ ±Σσδα≥ⁿ: @files = glob("*"); ≥.Ω. Γφ≤≥≡Φ ±ΩεßεΩ ∞εµφε Φ±∩εδⁿτεΓα≥ⁿ ∩σ≡σ∞σφφ√σ.
╩αΩ Φ ╤ Perl Γ√∩εδφ σ≥ Γετ∞εµφ√σ Γ√≈Φ±δσφΦ Γ ∩σ≡ΦεΣ Ωε∞∩Φδ ÷ΦΦ. ╥αΩ ∩εΣ±≥αφεΓΩα ±Φ∞ΓεδεΓ ∩ε±δσ '\' , ε∩σ≡α÷Φ ΩεφΩα≥σφα÷ΦΦ ±≥≡εΩ, α≡Φ⌠∞σ≥Φ≈σ±ΩΦσ Γ√≡αµσφΦ , ±εΣσ≡µα∙Φσ ≥εδⁿΩε εΣφΦ Ωεφ±≥αφ≥√, Γ±σ ²≥ε Σσδασ≥± Γ ∞ε∞σφ≥ Ωε∞∩Φδ ÷ΦΦ, ≈≥ε ±≤∙σ±≥Γσφφε ≤ΓσδΦ≈ΦΓασ≥ ±Ωε≡ε±≥ⁿ Γ√∩εδφσφΦ ∩≡επ≡α∞∞√.
╧ε ≤∞εδ≈αφΦ■ Perl Γ√∩εδφ σ≥ α≡Φ⌠∞σ≥ΦΩ≤ ± ∩δαΓα■∙σΘ τα∩ ≥εΘ, φε σ±δΦ Γ√ ≤Ωαµσ≥σ:
use integer;≥ε Ωε∞∩Φδ ≥ε≡ ß≤Σσ≥ Φ±∩εδⁿτεΓα≥ⁿ ÷σδε≈Φ±δσφφ≤■ α≡Φ⌠∞σ≥ΦΩ≤ Σε Ωεφ÷α ≥σΩ≤∙σπε ßδεΩα, ⌡ε≥ Γδεµσφφ√Θ ßδεΩ ∞εµσ≥ ²≥ε Φ ε≥∞σφΦ≥ⁿ Γ ±ΓεΦ⌡ ∩≡σΣσδα⌡ ± ∩ε∞ε∙ⁿ■:
no integer;