Курс языка программирования 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. Переданное в .comb регулярное выражение /\d+/ возвращает каждую цепочку цифр отдельной строкой, не обращая внимания на слова между ними.

  2. [+] @numbers складывает их, попутно превращая строки из цифр в числа.

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

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