PL Perl  ·  20 вопросов  ·  ~55 мин  ·  ⏱ Таймер 55:00  ·  Лёгкий  · 

Замены, транслитерация и захваты

Проверяет базовое понимание темы «Замены, транслитерация и захваты»: чтение фрагментов, выбор корректной конструкции и объяснение результата без опоры на угадывание. В тесте 20 вопросов: код нужно не только читать, но и трассировать, проверять на отказ, сопоставлять несколько правдоподобных решений. Ровно 12 заданий содержат фрагменты Perl; остальные проверяют выбор подхода в реальной ситуации. Если в условии не сказано иначе, предполагаются современный Perl 5.40+, strict и warnings; внешние модули рассматриваются в указанном контексте.

Отвечено: 0 из 20
⏱ --:--
0%
💡 Инструкция: Выберите один ответ из пяти. На 20 вопросов отведено 55 минут. В каждом вопросе верен только один вариант. После завершения откроются общий результат, оценки по 4 тематическим шкалам и подробный разбор.
Вопрос 1 из 20
Какое утверждение точно описывает поведение фрагмента «Оператор замены s///» с `$s` и `$n`?
PerlОператор замены s///
my $s = 'a1 b2';
my $n = ($s =~ s/\d/X/g);
say "$s/$n";
Вопрос 2 из 20
Как ведёт себя участок «Оператор транслитерации tr///» при выполнении?
PerlОператор транслитерации tr///
my $s = 'abc-123';
$s =~ tr/a-z/A-Z/;
say $s;
Вопрос 3 из 20
Что непосредственно следует из показанного кода с ключевыми операциями?
PerlГруппы
'name=42' =~ /(\w+)=(\d+)/;
say "$1/$2";
Вопрос 4 из 20
Что произойдёт после выполнения фрагмента «Глобальный поиск»?
PerlГлобальный поиск
my $s = 'a1b22';
while ($s =~ /(\d+)/g) { say "$1 at " . pos($s) }
Вопрос 5 из 20
Обычный случай проходит. Что в блоке «Оператор замены s///» всё же сделано неверно?
PerlОператор замены s///
my $s = 'price $5';
$s =~ s/$/ USD/;
Вопрос 6 из 20
Что в этом коде нарушает ожидаемое поведение?
PerlОператор транслитерации tr///
my $s = 'bookkeeper';
my $n = ($s =~ tr/a-z//);
Вопрос 7 из 20
Какой конкретный дефект заложен в реализации «Группы»?
PerlГруппы
if ($a =~ /(x)/ || $b =~ /(y)/) { say $1 }
Вопрос 8 из 20
Какой дефект проявится в варианте «Глобальный поиск» с `$s`?
PerlГлобальный поиск
my $s = 'abc';
while ($s =~ /\w*/g) { say $& }
Вопрос 9 из 20
Что именно стало надёжнее после изменения в блоке «Оператор замены s///»?
PerlОператор замены s///
my $sign = '$';
$s =~ s/\Q$sign\E/доллар/;
Вопрос 10 из 20
Какую гарантию добавляет правка «Оператор транслитерации tr///» с `$digits` и `$s`?
PerlОператор транслитерации tr///
my $digits = ($s =~ tr/0-9//);
Вопрос 11 из 20
Как показанная редакция «Группы» делает контракт проверяемым?
PerlГруппы
if (my ($key, $value) = $text =~ /\A(\w+)=(\d+)\z/) {
    say "$key=$value";
}
Вопрос 12 из 20
Какую гарантию добавляет правка «Глобальный поиск» с `$s` и `@tokens`?
PerlГлобальный поиск
while ($s =~ /\w+/g) { push @tokens, $& }
Вопрос 13 из 20
Какой вывод стоит перенести из учебного примера «Оператор замены s///» в рабочий код?
Вопрос 14 из 20
На что следует опираться при ревью кода по теме «Оператор транслитерации tr///»?
Вопрос 15 из 20
Какой принцип объясняет три кодовых примера блока «Группы»?
Вопрос 16 из 20
Какой общий принцип темы «Глобальный поиск» переносится на другие программы?
Вопрос 17 из 20
Где проходит граница применимости правила из темы «Оператор замены s///»?
Вопрос 18 из 20
Какое утверждение о теме «Оператор транслитерации tr///» не приписывает механизму лишних гарантий?
Вопрос 19 из 20
Где проходит граница применимости правила из темы «Группы»?
Вопрос 20 из 20
Какое предостережение по теме «Глобальный поиск» нельзя заменить включением strict и warnings?

Ответьте на все 20 вопросов, чтобы получить результат

🔗 Встроить тест на свой сайт (iframe) ▼

Скопируйте код и вставьте в любое место на вашем сайте:

Также доступна прямая ссылка на embed-страницу