Является ли fnmatch.fnmatch несовместимым с синтаксисом сопоставления файлов шаблона Unix? - PullRequest
0 голосов
/ 20 февраля 2020

Я использую Python 3.7.6 и функцию fnmatch.fnmatch , чтобы сопоставить имя файла с данным шаблоном. Большинство моих тестов работали, но в указанном c следующий пример не возвращает ожидаемое значение. Give - это следующий exanoke:

> fnmatch.fnmatch('_foo\bar.exe', '^_*')
False

Что я пытаюсь сделать, чтобы соответствовать любому имени файла, чей компонент начинается с _. Любая помощь высоко ценится

1 Ответ

1 голос
/ 20 февраля 2020

Это не то место, где Python не соответствует спецификации POSIX. UNIX синтаксис сопоставления с образцом не требует, чтобы ^ имел какое-либо специальное значение, за исключением в описании набора символов в квадратных скобках.

См .:


Это имеет смысл : Глобусы неявно привязаны - они всегда совпадают только в начале, поэтому нет никакой причины поддерживать явную привязку.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...