Учитывая структуру ресурса Unix-подобных путей:
например,
/foo/bar/baz/phleem/abc.txt
и набор шаблонов шаблонов в стиле муравья:
* matches zero or more characters excluding /
** matches zero or more full sub-paths (may not be preceded or followed
by anything other than /)
Все остальныесимволы в шаблонах являются литералами, и для простоты в путях допускаются только символы
AZ, az, 0-9 и / и.
.*
Учитывая приведенную выше структуру:
Правильно ли я предположил, что из всех совпадающих шаблонов наиболее конкретное совпадение всегда в алфавитном порядке?
Пример:
Путь:
/foo/bar/baz/phleem/abc.txt
Соответствие шаблонам (в алфавитном порядке):
** < least specific
**/*.txt
**/phleem/*.txt
/foo/**/abc.txt < most specific
Обновление: ОК, вот мое определение "наиболее конкретного"
a является более конкретным, чем b, если
- префикс без подстановочного знака a длиннее, чем у b
- , учитывая два подстановочных знака с одинаковым соответствующим смещением, * более конкретенчем **