№ Маски файлов
Определите, по какой из масок будет выбрана указанная группа файлов: make.cpp, name.c, age.pc, name.cpp
- ?a?e.*
- a?e.*
- *a?e.*
- *a*e.?
Решение
Символ «?» заменяет ровно один символ, а «*» заменяет любую последовательность символов, в том числе пустую.
Проверим каждую маску на всех четырёх файлах.
- Маска ?a?e.* требует ровно четыре символа в имени. У файла age.pc имя состоит из трёх символов (age), поэтому он не подходит.
- Маска a?e.* требует, чтобы имя начиналось с a и состояло из трёх символов. Подходит только age.pc, а make.cpp, name.c и name.cpp не подходят.
- Маска *a?e.*:
- make.cpp: «*» = m, затем a, «?» = k, затем e, после точки cpp. Подходит.
- name.c: «*» = n, затем a, «?» = m, затем e, после точки c. Подходит.
- age.pc: «*» пусто, затем a, «?» = g, затем e, после точки pc. Подходит.
- name.cpp: аналогично name.c, подходит.
- Маска *a*e.? допускает расширение из одного символа. У make.cpp, age.pc и name.cpp расширения длиннее, поэтому они не подходят.
Все четыре файла выбирает только маска
💡 Почему так
«?» — ровно один любой символ, «*» — любое количество символов (в том числе ноль). Маска *a?e.* подходит под все имена из четырёх букв и из трёх букв вида a?e, с любым расширением.
Ответ
✓ dzmen.ru
Помогло?
