Как я могу использовать конкретное регулярное выражение с Glob - PullRequest
0 голосов
/ 10 апреля 2020

У меня есть папка с именем example, и в ней есть несколько папок, таких как AB C, B C, ABCD и др. c. Название папки варьируется от 2 до 4 букв. в каждой папке есть разные файлы. Для ABCD он имеет ABCD-circle.txt, ABCD-circle-square.txt, ABCD-square.txt. то же самое для других папок, как для B C, он имеет B C -circle.txt, B C -circle-square.txt, B C -square.txt.

Я хочу чтобы получить только circle.txt для каждой папки, например ABCD-circle.txt, B C -circle.txt.

Я попытался использовать глобальный путь в python

local =  glob.glob('/Users/tp/Downloads/example/*/[A-Z]*-circle.txt')

но здесь я получаю все файлы B C -circle.txt, B C -circle-square.txt, ABCD-circle.txt, ABCD-circle-square.txt.

и если я делай

  local =  glob.glob('/Users/tp/Downloads/example/*/[A-Z]{2,4}-circle.txt')

тогда я ничего не получаю. Пожалуйста, совет !!

1 Ответ

0 голосов
/ 10 апреля 2020

Я сделал следующее:

local =  glob.glob('/Users/tp/Downloads/example/*/[A-Z]*-circle.txt')
for filePath in local:
    matches = re.findall("[A-Z]{2,4}-circle.txt", filePath)
    if matches:
        print(filePath)

, и это сработало!

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