Курс языка программирования Raku / Регулярные выражения и грамматики / Регулярные выражения / Захваты / Exercises / Инициал и фамилия
Решение: Инициал и фамилия
Вот один из возможных вариантов решения задачи.
Код
if 'J Smith' ~~ / $<initial>=(\w) ' ' $<surname>=(\w+) / {
say ~$<surname>;
}🦋 Исходный код можно найти в файле initial-and-surname.raku.
Вывод
SmithКомментарии
$<initial>=(\w)захватывает один словесный символ;$<surname>=(\w+)захватывает вереницу букв после пробела.Затем фамилию читают обратно по имени, как
$<surname>, а префикс~печатает её как обычную строку; без негоsay $<surname>показал бы объект совпадения как「Smith」.