View previous topic :: View next topic |
Author |
Message |
iNorbert
Joined: 03 Mar 2008 Posts: 221
|
(Separately) Posted: Sun Oct 28, 2012 19:06 Post subject: |
|
|
LonerD wrote: |
Вообще-то не десяток-другой, а учитывая все вариации с цифрами в rar-zip-7z-архивах - получится сотни две минимум. |
Не создавай себе и окружающим проблемы. Две сотни необязательно полностью переписывать, хватит и *.r0?;*.r1? и т.д. Вуаля, две сотни сократились до двух десятков. _________________ Только юнити, только хардкор!
Свинятина |
|
Back to top |
|
|
LonerD
Joined: 04 Jan 2011 Posts: 1168 Location: Донецк
|
(Separately) Posted: Sun Oct 28, 2012 19:34 Post subject: |
|
|
iNorbert
Суть не столько в способе записи, а в ничем не обоснованном ограничении.
Регулярные выражения, как оказалось, - лишь финтифлюшка, которая позволяет сократить запись для глаз, но в реальности их длина или суть ещё более ограничена. Например, вот такой шаблон - это максимум что можно выжать:
Code: | (Type) Archives_SearchFor=\.(\d{3}|1|2|7-z|7-zip|7z|7z\.0\d\d|7zip|9m1|\?\?\$|
\?q\?|a|add|a1|a7e|aar|aba|abbu|ac(b|e|m|p|u)|ad(f|sm|z)|afa|aic|ai(n|o|r)|akp|
akt|alz|aop|ap(|k|ple|_)|ar(|c|ch00|f|h|j|k|n|t|t6|v)|as(4a|d|ec|h|_)|at(3|
pz|r|x)|avb|aw(|i|zip)|axr|aza|b1|b64|ba|bag|bai|bar|bba|bc|bcz|bee|bel|
bh|bhx|bi(f|n|o)|bke|bkf|blb|blz|bma|bn(d|hq|t)|bo(a|e|o|s|x|z)|bpa|bs(n|
q|z)|btc|btoa|bun|bz|bz2|bza|bzip2|bzp2|c|c0[0-9]|c10|ca(1|b|r|rb|t|z))$
(Type) Archives_SearchIn=
(Type) Archives_SearchText=
(Type) Archives_SearchFlags=0|000002001020||||||||22220|0000| |
Если дописать сюда же ещё cb(7|r|t|v|z) - шаблон уже перестаёт работать.
(за пример взяты первые архиваторные расширения с сайта file-extensions.org) |
|
Back to top |
|
|
MVV
Joined: 15 Oct 2009 Posts: 4811 Location: Ростов-Дон
|
(Separately) Posted: Sun Oct 28, 2012 19:44 Post subject: |
|
|
Ограничение обосновать очень легко, зная специфику работы с INI-файлами. Функция GetPrivateProfileString принимает в параметрах буфер и его длину, записывает в буфер сколько можно и сообщает, сколько записала. Узнать заранее, сколько же реально понадобится, невозможно. Судя по ограничению, тотал предоставляет функции двухкилобайтный буфер. Я бы тоже не стал ожидать, что параметр в INI-файле будет длиннее... _________________ TCFS2 + TCFS2Tools: Полноэкранный режим и многое другое (обсуждение)
WINCMD.RU: AskParam, CopyTree, NTLinks, Sudo, VirtualPanel…
Last edited by MVV on Sun Oct 28, 2012 19:49; edited 1 time in total |
|
Back to top |
|
|
Rodny
Joined: 24 Jan 2007 Posts: 949 Location: Могилёв, Беларусь
|
(Separately) Posted: Sun Oct 28, 2012 19:47 Post subject: |
|
|
LonerD
Не вдаваясь в вопросы, кому все эти расширения нужны, скажу только, что регекспы можно оптимизировать. Тот же "cb(7|r|t|v|z)" можно сократить до "cb[7rtvz]", "ba|bag|bai|bar" до "ba[gir]?" и т.п. |
|
Back to top |
|
|
iNorbert
Joined: 03 Mar 2008 Posts: 221
|
(Separately) Posted: Sun Oct 28, 2012 20:02 Post subject: |
|
|
LonerD wrote: | iNorbert
Суть не столько в способе записи, а в ничем не обоснованном ограничении. |
Второй аскер. Нет предела совершенсвованию.
akp, bel, bba... Что за скопление букв?
Я прошелся на сайт, поглядел:
bba - BlueByte archive file.
Я загуглил BlueByte, затем википеднул первую ссылку.
Quote: | Ubisoft Blue Byte (ранее Blue Byte GmbH) — известный немецкий разработчик компьютерных игр, основанный в 1988 году. Blue Byte, в основном, известен по играм двух серий — Battle Isle и The Settlers. Штаб-квартира студии находится в немецком городе Дюссельдорф. В январе 2001 года. студия была куплена известной французской компанией Ubisoft Entertainment и переименована. |
В этом момент я вспомнил что-то смутно связанное с поселенцами , но тем не менее.
Вот мой шаблон «ARC»:
*.7z;*.ace;*.arc;*.arj;*.b64;*.balz;*.bhx;*.bz;*.bz2;*.bzip2;*.cab;
*.cpio;*.deb;*.dmg;*.fat;*.gz;*.gzip;*.hfs;*.hqx;*.lha;*.lzh;*.lzma;
*.mim;*.ntfs;*.nz;*.paq8o;*.pea;*.r0?;*.r1?;*.r2?;*.r3?;*.r4?;*.r5?;
*.r6?;*.r7?;*.r8?;*.r9?;*.rar;*.rpm;*.swm;*.tar;*.taz;*.tbz;*.tbz2;*.tgz;
*.tpz;*.tz;*.uu;*.uue;*.vhd;*.wim;*.xar;*.xpi;*.xxe;*.xz;*.z;*.zip;*.zipx;
В свое время я тупо передрал раздел ассоциаций 7-zip, WinRAR и WinZIP. Но зато я уверен что это все настоящие архивы, относительно распространенные. Так сказать доступные кроме как в научных лабораториях. _________________ Только юнити, только хардкор!
Свинятина |
|
Back to top |
|
|
MVV
Joined: 15 Oct 2009 Posts: 4811 Location: Ростов-Дон
|
(Separately) Posted: Sun Oct 28, 2012 20:03 Post subject: |
|
|
Вгляделся в пример шаблона выше. Получается, что BAR-файлы тотала - архивы? В очередной раз рекомендую ограничить шаблон типами, с которыми реально приходится иметь дело...
Ну и насчёт сокращения записей верно сказано. Заодно, думаю, можно (и нужно - это сократит запись и ускорит обработку, т.к. позволит пропускать большие куски выражения) сгруппировать расширения, показываю на примере начинающихся с b:
Code: | \.(...|b(1|64|a[gir]?|ba|cz?|e[el]|hx?|i[fno]|k[ef]|l[bz]|ma|n(d|hq|t)|o[aeosxz]|pa|s[nqz]|t(c|oa)|un|z2?|za|zi?p2)|...) |
Это выражение в полтора раза короче указанного выше, хотя идентично. Напоминаю, спецзнак ? указывает, что элемент перед ним (символ, набор символов или выражение в скобках) может быть, а может и не быть. Т.е., zi?p2 соответствует как zip2, так и zp2. _________________ TCFS2 + TCFS2Tools: Полноэкранный режим и многое другое (обсуждение)
WINCMD.RU: AskParam, CopyTree, NTLinks, Sudo, VirtualPanel… |
|
Back to top |
|
|
Flasher
Joined: 06 Nov 2009 Posts: 14229 Location: Москва
|
(Separately) Posted: Sun Oct 28, 2012 20:20 Post subject: |
|
|
LonerD wrote: | а не заниматься сортировкой по типу "этот тип файлов добавляем, этот я не знаю, потому его удаляю". | Согласен с таким подходом. К тому же мы ведём речь об окрашивании в тот или иной оттенок для распознавания типов, т.е. совокупности расширений. Попадаются же разные файлы из сети и заниматься тем, чтобы выискивать всякий раз на неподсвеченном файле историю его расширения у меня лично нет ни времени, ни желания, я сразу хочу понимать, что перед глазами, это касается и поиска, и фильтра, и всего остального. И, кстати, именно благодаря такому подходу, я осведомлён о многих расширениях, о которых до определённого времени не имел представления, т.е. подход благостно и на память влияет. |
|
Back to top |
|
|
Avada
Joined: 01 Aug 2008 Posts: 10268 Location: Россия, Саратов
|
(Separately) Posted: Sun Oct 28, 2012 20:31 Post subject: |
|
|
iNorbert
Предупреждение за нарушение правил форума. Пост с флудом и матом удалён.
Flasher
Во-первых, благодаря такому подходу в список запросто попадут расширения, которые, скажем так, не всегда относятся с архивам (пример с BAR выше уже приводился).
Во-вторых, дело в общем-то хозяйское, но список масок в TC — рабочий инструмент, а не глобальный справочник по всем существующим расширениям. _________________ Даже самая богатая фантазия
Не представит себе наши безобразия. |
|
Back to top |
|
|
Flasher
Joined: 06 Nov 2009 Posts: 14229 Location: Москва
|
(Separately) Posted: Sun Oct 28, 2012 20:59 Post subject: |
|
|
Avada
1. Обсуждалось с ask-rus, см. выше. Как это решается - другой вопрос.
2. Вот именно, что хозяйское. Рабочий инструмент как элемент запоминания, а вовсе не справки, как ты пишешь, вполне имеет место быть. Справочным материалом список масок никак не назовёшь, а вот оцветовка неизвестного расширения упрощает многие задачи, в частности - выбор соответствующего приложения для открытия, просмотра и/или редактирования.
Кстати, ты не мог бы там пробельчики в масках поставить, чтобы не растягивать страницу? |
|
Back to top |
|
|
LonerD
Joined: 04 Jan 2011 Posts: 1168 Location: Донецк
|
(Separately) Posted: Sun Oct 28, 2012 21:01 Post subject: |
|
|
Quote: | Получается, что BAR-файлы тотала - архивы? |
Нет, получается что существуют одинаковые расширения для разных типов файлов. Наверное, наиболее известный факт - расширение cue, которое с одной стороны применяется для образов дисков (bin+cue), а с другой - для аудиофайлов.
Для поиска/фильтрации - повторение расширений никак не конфликтуют. А для расцветки - можно (и нужно) решить данный конфликт с повторяющимися форматами путём задания порядка цветов в секции Colors.
iNorbert wrote: | Но зато я уверен что это все настоящие архивы, относительно распространенные. |
Проблема изначально была в том, что мне известно куда большее количество архивов, потому не хотелось перебирать весь список в поиске и отсеивании известных.
Rodny, MVV
Спасибо за FAQ по регулярным выражениям.
MVV
Quote: | Заодно, думаю, можно (и нужно - это сократит запись и ускорит обработку, т.к. позволит пропускать большие куски выражения) сгруппировать расширения |
Это я уже тоже делал (правда, менее оптимальным образом).
И про это в данной теме уже задавал вопрос.
Чем больше сокращать таким вот образом запись - тем меньше размером получится рабочий фрагмент.
Например (абстрагируясь от необходимости) имеем 7 кб архивных форматов. Их можно разбить на 4 секции Archives1, Archives2, Archives3, Archives4 и каждой секции задать один и тот же цвет.
Предварительно оптимизируем регулярными выражениями этот 7килобайтный список. Получим около 2кб информации. Однако эти 2кб не получится впихнуть в одну секцию, их нужно разбить примерно на 7-8 (!!) секций, то есть даже больше, чем изначально. Значит, видимо, какие-то ещё есть ограничения на вложенность регулярных выражений или на количество спецсимволов или на что-то ещё. |
|
Back to top |
|
|
ask-rus
Joined: 10 Nov 2009 Posts: 2076 Location: Russian Federation
|
(Separately) Posted: Fri Feb 08, 2013 17:12 Post subject: |
|
|
Список поддерживаемых расширений некоторых программ вынимаю с помощью ABBYY Screenshot Reader. В ряде случаев получаю столбец расширений вида:
В случае, если он в нижнем регистре, преобразую в верхний с помощью AkelPad (Правка - Выделение - ВСЕ ПРОПИСНЫЕ или Ctrl+6).
Для сортировки понадобится плагин для AkelPad - Format, а для преобразования столбца в список вида:
Quote: | *.TXT;*.MP3;*.AVI;*.JPG |
как требует TC, необходимы плагины Scripts и ToolBar. Первый непосредственно осуществляет необходимую команду, а второй удобства ради создает пространство для кнопок. А кнопка следующая:
Code: | "Кнопка" Call("Scripts::Main", 1, "EvalCmd.js", `AkelPad.TextReplace(0, "^", "*.", 0x00280000, true); AkelPad.TextReplace(0, "\\n", ";", 0x00280000, true);`) |
EvalCmd.js поставляется со Scripts. Плагины на одной странице. _________________ «Минимализм - это кратчайший путь бесконечного стремления к идеалу»
«Не бойся, что не знаешь, - бойся, что не учишься» Китайская пословица |
|
Back to top |
|
|
Neptun79
Joined: 24 Jul 2010 Posts: 93
|
(Separately) Posted: Sat Jul 13, 2013 16:31 Post subject: |
|
|
Это всё конечно отлично, но быть может есть у кого готовые строки вида :
*.bmp; *.jpg; *.giff и т.п.
*.wave; *.mp3; *.ogg и т.п.
и другие разделённые по категориям, очищенные от мусора (и дубликатов) , которые можно сразу вставит в шаблон поиска. |
|
Back to top |
|
|
Avada
Joined: 01 Aug 2008 Posts: 10268 Location: Россия, Саратов
|
(Separately) Posted: Sat Jul 13, 2013 16:43 Post subject: |
|
|
All
Заново выкладываю разобранный по категориям список расширений (по прежней ссылке его скачать уже нельзя).
Neptun79
А совсем отлично будет, если попытаться хоть что-то сделать самостоятельно. Сюда заглянуть хотя бы. Не говоря уже про то, что представления о мусоре и дубликатах, как нетрудно увидеть выше, у всех разные. _________________ Даже самая богатая фантазия
Не представит себе наши безобразия. |
|
Back to top |
|
|
Skif_off
Joined: 28 Nov 2012 Posts: 1232
|
(Separately) Posted: Sat Jul 13, 2013 18:42 Post subject: |
|
|
Странно с RAW-файлами:
Canon, Kodak, Pentax - Растровые изображения
Fuji, Minolta, Nikon, Sony - Рисунки, изображения
И тут религия? Придется перетряхивать |
|
Back to top |
|
|
Avada
Joined: 01 Aug 2008 Posts: 10268 Location: Россия, Саратов
|
(Separately) Posted: Sat Jul 13, 2013 19:26 Post subject: |
|
|
Skif_off
Я взял исходный архив, ровно ничего в нём не трогая. За содержание не отвечаю. _________________ Даже самая богатая фантазия
Не представит себе наши безобразия. |
|
Back to top |
|
|
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
Powered by phpBB © 2001, 2005 phpBB Group
|