Для начала поясню что
значат * и ? в маске. *-это последовательность символов, то есть любое
количество символов. От 0 до бесконечности. Нам не важно что это за символы
важен сам факт их существования или не существования. ?-это только один символ.
Опять же, не важно какой, главное, чтобы он был там.
Первая маска: A?B*.*C?*. Её можно интерпретировать как A[любой символ]B[последовательность
символов или ничего]. [последовательность символов или ничего]C[любой символ] [последовательность
символов или ничего].
Под такие условия подходят 5 файлов, которые переходят в каталог friends:
ABBCBD.CDDBA
ACBDC.ACBA
AABBCCDD.DDCCD
ACBCACD.AABBCCDD
ADBCCAD.CADABC
Почему не подходят остальные? ABDCC.ACBDA – нет символа в начале между A и B. BABCDA.ABCD
- нет символа A в начале. AABACADA?CDBDADCB
– нет точки.
Следующая маска: *B?C*.??*D*. На человеческий: [любой символ] B] [последовательность
символов или ничего]C[любой символ]. [любой символ] [любой символ] [последовательность
символов или ничего]D [последовательность символов или ничего]
Результат – 3 файла в папке family :
ABBCBD.CDDBA
AABBCCDD.DDCCD
ADBCCAD.CADABC
Остальные: ACBCACD.AABBCCDD – после единственной B сразу идёт C; ACBDC.ACBA
– после точки нет D.
Ответ:
ABBCBD.CDDBA
AABBCCDD.DDCCD
ADBCCAD.CADABC