Соответствие имени файла заданной маске (Кто-нибудь знает такую функцию?)

Модератор: Модераторы разделов

RealMan
Сообщения: 16

Соответствие имени файла заданной маске

Сообщение RealMan »

Есть маска (например, *.txt), есть набор имен файлов, нужно отобрать те из них, которые удовлетворяют заданной маске.
В простейшем варианте, когда маска определяет только расширение файлов, реализация алгоритма нахождения соответствия проблем не вызывает. Но для более сложных случаев, когда маска имеет сложную структуру, алгоритм писать уже не так просто, да и наверняка есть уже такая функция либо в каких-либо стандартных библиотеках либо в самой системе. Вопрос в том, где конкретно есть такая функция? Кто-нибудь знает?
Спасибо сказали:
Аватара пользователя
oav
Бывший модератор
Сообщения: 296

Re: Соответствие имени файла заданной маске

Сообщение oav »

RealMan писал(а):
10.02.2006 13:34
Есть маска (например, *.txt), есть набор имен файлов, нужно отобрать те из них, которые удовлетворяют заданной маске.
В простейшем варианте, когда маска определяет только расширение файлов, реализация алгоритма нахождения соответствия проблем не вызывает. Но для более сложных случаев, когда маска имеет сложную структуру, алгоритм писать уже не так просто, да и наверняка есть уже такая функция либо в каких-либо стандартных библиотеках либо в самой системе. Вопрос в том, где конкретно есть такая функция? Кто-нибудь знает?

http://man.he.net/man3/glob
Спасибо сказали:
Аватара пользователя
Zeus
Сообщения: 694

Re: Соответствие имени файла заданной маске

Сообщение Zeus »

RealMan писал(а):
10.02.2006 13:34
Есть маска (например, *.txt), есть набор имен файлов, нужно отобрать те из них, которые удовлетворяют заданной маске.
В простейшем варианте, когда маска определяет только расширение файлов, реализация алгоритма нахождения соответствия проблем не вызывает. Но для более сложных случаев, когда маска имеет сложную структуру, алгоритм писать уже не так просто, да и наверняка есть уже такая функция либо в каких-либо стандартных библиотеках либо в самой системе. Вопрос в том, где конкретно есть такая функция? Кто-нибудь знает?

Наверное примерно вот это:

#include <fnmatch.h>
int fnmatch (const char* pattern, const char* name, int flags);
Спасибо сказали:
Аватара пользователя
folibis
Сообщения: 92
ОС: Arch-ик

Re: Соответствие имени файла заданной маске

Сообщение folibis »

не понял, а че RexExp уже отменили ...?
עת לכל חפץ
Спасибо сказали:
Аватара пользователя
Asgard
Сообщения: 215
Статус: North Valfader

Re: Соответствие имени файла заданной маске

Сообщение Asgard »

folibis
а смысл использовать regex.h, если всё вполне адекватное сравнение можно сделать одной специально сделанной для этого функцией?
sator arepo tenet opera rotas ;)
------------------------------------------------------------
LJ
Спасибо сказали:
Аватара пользователя
folibis
Сообщения: 92
ОС: Arch-ик

Re: Соответствие имени файла заданной маске

Сообщение folibis »

Asgard писал(а):
17.02.2006 05:58
folibis
а смысл использовать regex.h, если всё вполне адекватное сравнение можно сделать одной специально сделанной для этого функцией?


Ну человек же ищет готовую функцию ... Не тупи.
Да и сравнение, по его словам, сложное ...
Зачем изобретать колесо?
עת לכל חפץ
Спасибо сказали:
Аватара пользователя
elide
Бывший модератор
Сообщения: 2421
Статус: Übermensch
ОС: лялих

Re: Соответствие имени файла заданной маске

Сообщение elide »

Asgard
так ты же вроде никогда не пользовался готовыми функциями? или тоже к быдлокодерам примкнул?
слава роботам!
Спасибо сказали:
Аватара пользователя
d_Sun
Сообщения: 291

Re: Соответствие имени файла заданной маске

Сообщение d_Sun »

elide писал(а):
17.02.2006 13:58
Asgard
так ты же вроде никогда не пользовался готовыми функциями? или тоже к быдлокодерам примкнул?


[OFFTOP]
elide кого-то не подъе№"т - день даром :D
[OFFTOP]
Моя подпись сильно длинная :)
Спасибо сказали: