Регулярное выражение для поиска файлов .lnk
AmneziaVPN.lnk Buble CodeBlocks.lnk desktop.ini game GuessNumber IDLE (Python 3.9 64-bit).lnk port.pdf Shareman.lnk Untitled-1.py Visual Studio Code.lnk Новая папка Proyects.lnk Этот компьютер - Ярлык.lnk
Есть такой набор файлов и я хочу из него отобрать все названия ярлыков на .lnk Написал выражение
[\w\W]+?\s?.lnk
Но получается, что оно захватывает и те названия, которые не соответствуют .lnk из-за того, что оно встретится в следующем вхождении. Можно ли как-то исправить этот момент, уже несколько часов пытаюсь решить этот вопрос
Ответы (1 шт):
Автор решения: Сергей Ш
→ Ссылка
lst = ['AmneziaVPN.lnk', 'Buble CodeBlocks.lnk', 'desktop.ini', 'game GuessNumber IDLE (Python 3.9 64-bit).lnk',
'port.pdf', 'Shareman.lnk', 'Untitled-1.py', 'Visual Studio Code.lnk', 'Новая папка Proyects.lnk',
'Этот компьютер - Ярлык.lnk', 'main.lnk.py']
print(*[x for x in lst if x[-4:] == '.lnk'], sep='\n')
# print(*[x for x in lst if x.endswith('.lnk')], sep='\n')
AmneziaVPN.lnk
Buble CodeBlocks.lnk
game GuessNumber IDLE (Python 3.9 64-bit).lnk
Shareman.lnk
Visual Studio Code.lnk
Новая папка Proyects.lnk
Этот компьютер - Ярлык.lnk