Patogus Perlo įpraiškų naudojimas
Tarkim jums reikia, kad pritaikyti įpraišką simbolių eilutei ir
rezultatus sudėti į masyvą. Perle tai labai lengva:
@masyvas = $eilute =~ m/(kazkas)/g;
Šitas kodo gabaliukas veikia, nes =~
turi didesnę
reikšmę nei =
ir todėl įpraiška yra pritaikoma anksčiau.
Jeigu reikia sužinoti tik kiek kartų įpraiška atitiko eilutę galima
daryti taip:
$kiek_kartu = $eilute =~ m/(kazkas)/g;
Viskas labai paprasta: jeigu rezultatą priskiriame masyvui, tai
gauname atitikmenų masyvą, jeigu rezultatą priskiriame paprastam
skaliarui, tai gauname atitikmenų skaičių. Viską galima padaryti ir
vienu ypu:
$kiek_kartu = @masyvas = $eilute =~ m/(kazkas)/g;
Tad šituo pasinaudojant galima tarkim išsitraukti visas nuorodas iš
HTML:
@nuorodos = $html =~ m/<a[^>]+href\s*=\s*["']?([^"'> ]+)/ig;
Nors tokiai užduočiai gal ir geriau naudoti HTML::LinkExtor
modulį.