LINUX.ORG.RU

выражение для sscanf


0

1

Не могли бы мне помочь с фильтром для функции «sscanf», что бы можно было отловить дату в следующих вхождениях

С-2011-06-14-000001.txt

или

/путь/D-2011-06-14-000001.txt ** Первый символ всегда разный

Начал так, но ничего не вышло

if ( sscanf( argv[2], "%s-%d-%d-%d-.%s", buff &yy, &mm, &dd, buff ) == 5 ) ...

ну sscanf же не регулярка

namezys ★★★★
()
Ответ на: комментарий от mordovorot

> поиск первого "-" может сказаться если путь содержит таковой

Тогда придется начинать с попытки найти последний разделитель пути. И уже от него искать '-'.

Manhunt ★★★★★
()
Ответ на: комментарий от Manhunt

Чем сложнее логика, тем более оправдано использование регулярных выражений. А то потом будет не разобраться в лапше из if-ов.

Manhunt ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.