Raku kurss / Regulārās izteiksmes un gramatikas / Regulārās izteiksmes / Virkņu saskaņošana

Viedās saskaņošanas operators

Operators, kas piemēro regulāro izteiksmi virknei, ir gudrā sakritība ~~:

say 'the cat sat' ~~ /cat/; # 「cat」

Raksturs, kas uzrakstīts starp slīpsvītrām, ir visizplatītākā forma, taču ir vēl divas, kas nozīmē to pašu un dažreiz ir skaidrākas:

say 'the cat sat' ~~ m/cat/;  # 「cat」
say 'the cat sat' ~~ rx/cat/; # 「cat」

Forma m/.../ uzsver, ka veicat piemeklēšanu, un noder, kad sakritībai vēlaties pievienot iespējas (ar tām, sauktām par apstākļvārdiem, iepazīsieties vēlāk). Forma rx/.../ izveido regulārās izteiksmes vērtību, to vēl nepiemeklējot.

Ļoti bieži jums rūp tikai tas, vai virkne sakrita, nevis kas tieši atrasts. Tā kā veiksmīga sakritība ir patiesa vērtība, bet neveiksmīga — aplama, rezultātu var izmantot tieši Būla kontekstā. Tīrākais veids, kā iegūt vienkāršu True vai False, ir funkcija so:

say so 'the cat sat' ~~ /cat/; # True
say so 'the cat sat' ~~ /dog/; # False

Tas padara regulāro izteiksmi par dabisku nosacījumu if konstruktam:

if 'the cat sat' ~~ /cat/ {
    say 'found it';   # found it
}

Prakse

Jūs gaida 1 viktorīna par šī temata saturu.

Kursa navigācija

Virkņu saskaņošana   |   Viktorīna — Viedā saskaņošana


💪 Vai arī dodieties tieši uz šīs sadaļas vingrinājumiem.