Ответ:

Символ * заменяет любую последовательность символов, а ? — ровно один символ.

  1. ?*mi*.m* не выбирает demidov.mp4, так как в его имени нет mi.
  2. *mi*.mp* выбирает ровно требуемые файлы: имя содержит mi, а расширение начинается с mp. Файл smi.mdb не подходит.
  3. *?mi?.mp* не выбирает smi.mp3, так как после mi в его имени нет символа.
  4. *?mi*.mp* также выбирает ровно требуемые файлы: перед mi есть символ, расширение начинается с mp.

Ответ: подходят маски 2 и 4.