Краткий ответ
- По маске
?l*ck.*?: click.txt, black.ppt, elpack.ty, clock.tt. - 1) № 3 —
Access.mdb - 2) № 3 —
*a?e.* - 3) № 2 —
mmassiv.p - 4) № 2 —
c*.*
Объяснение
? заменяет ровно один символ, а * — любую последовательность символов, в том числе пустую.
Верхнее задание
Маска: ?l*ck.*?
Проверяем подходящие имена:
click.txt:c+l+i+ck+.+tx+t;black.ppt:b+l+a+ck+.+pp+t;elpack.ty:e+l+pa+ck+.+t+y;clock.tt:c+l+o+ck+.+t+t.
1) Маска A?ce*s.m*
Подходит Access.mdb:
A c c e s s . m d b
A ? c e * s . m *
Значит, правильный вариант — 3.
2) Маска *a?e.*
Она подходит ко всем файлам:
make.cpp:m+a+k+e+.cpp;name.c:n+a+m+e+.c;age.pc: пустая последовательность +a+g+e+.pc;name.cpp:n+a+m+e+.cpp.
Правильный вариант — 3.
3) Маска ?mass*.p*
mmassiv.p разбивается так:
m | mass | iv | . | p | пустая последовательность
? | mass | * | . | p | *
Правильный вариант — 2.
4) Маска c*.*
Она подходит всем четырём именам: каждое начинается с c, затем идёт любая последовательность символов, точка и любое расширение:
comfort.c;cobalt.cpp;coat.c;cost.cpp.
Правильный вариант — 2.
