EDSL для FSM

Feb 01, 2013 06:05

В диком интернете нет (и не может быть) никакого порядка, в именовании файлов изображений. Это хорошо ещё, если картинку на хостинг закачивает вебмастер своими руками по фтп: в большинстве случаев имя файла будет относительно осмысленным, а вот если это происходит через веб-форму для аплоада, то имя, которое в итоге получит файл, остаётся на ( Read more... )

code, common lisp, edsl, image, filename, internet, dsl, lisp, code generation

Leave a comment

Comments 21

voidex February 1 2013, 08:59:20 UTC
Что-то слишком сложно.
http://hpaste.org/81641

Reply

voidex February 1 2013, 08:59:51 UTC
Результат:
["clip","image","001"]
["52","Untitled","1","Copy"]
["main","full"]
["Copy","2","of","IMG","4743"]
["Oceans","Twelve","Poster"]
["2494","cd","87","d","Tulips"]
["Small","201191981250","Tulips"]
["toyota","corolla","altis","2","0"]
["Corolla","20","Altis","202010"]
["drawing","last","kiss","icey","cassvn","1024","x","768"]
["PHOTO","of","ME","44"]

Reply

swizard February 1 2013, 10:38:50 UTC
Да не

у тебя проще и короче, но вот так-то как-нибудь ещё короче :)

% echo "ThePHOTOofME14==9AndMyCat8see" | \
perl -ple 's#\W+# #g;s#([A-Z])([a-z])|([A-Za-z])(\d)#$1$3 $2$4#g;s#([a-z])([A-Z])|(\d)([A-Za-z])#$1$3 $2$4#g;s#(^|[^A-Z])([A-Z]) ([a-z])#$1$2$3#g'
The PHOTO of ME 14 9 And My Cat 8 see

А в посте я пытался продемонстрировать сишный fsm на стероидах, но, видимо, в шесть ночи мысль уже сложно правильно подать =)

Попробуй изобразить решение, которое будет работать в один проход и с одной аллокацией, и у тебя тоже должна получиться простыня.

Reply

voidex February 1 2013, 11:50:37 UTC
Я сомневаюсь, что на perl короче. Значимых элементов там ещё и больше.
А во-вторых, это решение и работает в один проход, да ещё и лениво. Я могу докладывать в хвост по одному символу и на выходе получать всё новые элементы.
Единственное, что в данном решении мешает, - это takeBaseName.

Reply


p2004r February 1 2013, 11:32:48 UTC
CRF++ решит проблему? (только бить на символы и описывать контекст классифицируемого тоже относительно символов, а не слов как в оригинале)

Reply

swizard February 1 2013, 12:20:42 UTC
Не знаю, как-то там сложно всё. Плюс непонятно, можно ли этой штукой вообще данные из дикого инета классифицировать, там же никогда не знаешь что на вход придёт.

Reply

p2004r February 1 2013, 12:25:49 UTC
citeseer разбирает библиографии статей именно этой библиотекой. там в его исходниках есть идея обвязки этой библиотеки разными способами.

Изначально у citeseer были регексы, теперь регексы только для вырезания библиографии остались, а весь разбор идет этой библиотекой.

PS тут ведь всего надо два тега проставить или символ "часть слова", или "разделитель".

Reply

swizard February 1 2013, 12:53:42 UTC
А тебе не сложно привести пример для примеров файлов в посте? Было бы любопытно, а то я сходу не могу разобраться, как ей пользоваться.

Reply


No title livejournal February 1 2013, 13:51:21 UTC
Пользователь 7ocb сослался на вашу запись в записи « No title» в контексте: [...] Навеяно этим постом [...]

Reply

7ocb February 1 2013, 14:19:56 UTC

... )

Reply


7ocb February 1 2013, 13:51:49 UTC

Ujfew ivhbfv hvwie kjbwih jhwifeuh anonymous September 1 2017, 05:58:50 UTC
Bfhuwe fwbihfwei wbfeihfiw jbfiwfv iwefibwe 87ty439hgg

Reply


Leave a comment

Up