Курс по Raku / Регулярни изрази и граматики / Регулярни изрази / Заместване и замяна / Exercises / Маскирайте цифрите

Решение: Маскирайте цифрите

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

Код

my $orig = 'PIN 1234';
say S:g/\d/#/ given $orig;
say $orig;

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

Изход

PIN ####
PIN 1234

Коментари

  1. Операторът S/// с главна буква върши същата работа като s///, но връща нов низ, вместо да променя променливата на място. С :g той заменя всяка цифра \d с # във върнатото копие. Прилага се към $orig чрез given, който прави низа тема.

  2. Отпечатването на $orig след това показва, че той все още съдържа PIN 1234 — за разлика от s///, оригиналът е останал недокоснат.

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

Маскирайте цифрите   |   Граматики