Курс по Raku / Приложение 🆕 / Типове и текстови машини / Регулярни изрази и граматики / Exercises / Извлечете и сумирайте числа

Решение: Извлечете и сумирайте числа

Ето едно възможно решение на задачата.

Код

my $text = 'order 12 apples, 3 pears and 25 plums';

my @numbers = $text.comb(/\d+/);

say "numbers: @numbers[]";
say "sum: { [+] @numbers }";

🦋 Намерете програмата във файла extract-numbers.raku.

Изход

numbers: 12 3 25
sum: 40

Коментари

  1. Подаването на регулярния израз /\d+/ на .comb връща всяка поредица от цифри като отделен низ, пренебрегвайки думите между тях.

  2. [+] @numbers ги събира, като по пътя превръща низовете от цифри в числа.

Навигация в курса

Извлечете и сумирайте числа   |   Разберете дата с именувани прихващания