Raku kurss / Regulārās izteiksmes un gramatikas / Regulārās izteiksmes / Tvērumi
Nosauktie tvērumi
Numurēti tvērumi ir ērti, taču, raksturam augot, nosaukumi ir
skaidrāki nekā numuri. Lai tvērumam dotu nosaukumu, rakstiet
$<nosaukums>=( … ):
if 'Anna:30' ~~ / $<name>=(\w+) ':' $<age>=(\d+) / {
say $<name>; # 「Anna」
say $<age>; # 「30」
}Satvertie gabali tagad ir sasniedzami pēc nosaukuma caur
$<name> un $<age>, nevis
$0 un $1. Tas ir tas pats, kas rakstīt
$/<name>, jo nosaukumi dzīvo sakritības mainīgā
$/ iekšienē.
Nosauktie tvērumi padara raksturu gandrīz par datu aprakstu:
if 'x=5' ~~ / $<key>=(\w+) '=' $<value>=(\w+) / {
say "key is $<key>, value is $<value>"; # key is x, value is 5
}Tāpat kā pozicionālie tvērumi, arī katrs nosauktais tvērums ir
sakritības objekts, tāpēc $<age>.Str dod vienkāršu
tekstu, bet $<age>.from — tā pozīciju.
Prakse
Jūs gaida 1 viktorīna par šī temata saturu.
Kursa navigācija
← Viktorīna — Pozicionālie tvērumi | Viktorīna — Tvērumi →
💪 Vai arī dodieties tieši uz šīs sadaļas
vingrinājumiem.