VBSplit program - similar blocks searching

VBSplit program


VBSplit, версия 5.0, Copyright (C) Tigers Ltd, 1996-1999
Последнее редактирование: 19-Dec-99.


Авторы: Виктор Болотников, Ирина Фархи.
EMail: tiger@kulichki.com, irina@kulichki.com
URL: http://tiger.kulichki.net

System requirements: Windows-95 or better (not Linux!)
MFC library (mfc42.dll I think).

Последняя версия программы может быть найдена на http://tiger.kulichki.net/vbsplit/vbsplit.zip

Что это за программа, и для чего она нужна? К сожалению, сложность ответа на данный вопрос соизмерима с написанием самой программы.

Формальный ответ: поиск похожих блоков в больших текстовых файлах, а также выделение подмножеств, содержащих данные ключи.

Теперь так, чтоб было понятно... Предположим, есть громадная подборка анекдотов (именно такая ситуация была у того, кто три года назад заказал первую версию программы). Хочется найти и уничтожить дубли. Точные дубли искать просто: в один проход строится матрица контрольных сумм, а дальше все, у кого эти суммы совпали, сравниваются на предмет тождественности. Но что делать, если один блок отличается от другого парой пробелов и грамматическими ошибками? Сравнивать всех друг с другом - не выдержит компьютер. Да и как определить, что такое похожие блоки? Оставьте эту работу программе...

Принцип работы программы (в самых общих чертах): Блоки, содержащие данные слова (из файла ключей), объединяются в темы и проверяются на предмет похожести. Признанные похожими, могут быть сброшены в специальный файл, Один из блоков может быть уничтожен (в зависимости от установок пользователя). Содержащие ключевые слова сохраняются в одном файле, остальные - в другом (они могут совпадать, если цель - только выделить дубли).

Другой аспект использования программы: необходимо сделать тематическую выборку блоков, содержащих данные слова. например, анекдоты про Чапаева, по всей вероятности, должны содержать слова "Василий", "Иванович", "Петька", "Анка", Фурманов". Создать файл ключей, запустить программу - и проверить результат.

Формат файла ключевых слов:
каждое слово - с первой позиции новой строки.
Поиск слов, содержащих символы, отличные от русских/английских букв и цифр, может повести к непредсказуемым результатам: некоторые символы являются служебными для сложного поиска.

Тема - набор ключей в последовательно идущих строках. Темы разделяются пустой строкой. Малое число строк означает соответствие каждого ключа отдельной теме.

====================================================================
Ограничения бесплатной версии (их много, но мешают они только профессиональной редакторской работе):

- Ответ пользователя на вопрос "похожи ли два данных блока" всегда "да, оба блока надо скинуть в файл дублей".

- Заблокирована кнопка "Стоп", которая корректно останавливает работу программы (работает, пока не закончит или пока процесс не будет убит).

- Нет возможности обрабатывать в один запуск несколько файлов с разными ключами.

- максимальное количество тем (и ключей) для каждого запуска равно 20. Более, чем достаточно для единичных выборок, но маловато, если хочется перелопатить файл размером в 15М, поставив программу крутиться до утра с десятью тысячами ключей, как это делал автор.

- нет опции сложного поиска: только в конце слова, только в начале или точное вхождение. Необходимость ее связана с тем, что поиск слова "армен" найдет также слово "бармен", которое не имеет отношения к Армении.

Что ж, за десять баксов дам полную версию с подробными объяснениями. За пятьдесят продам документированные исходники (сразу предупреждаю, это для энтузиастов: нужны определенные познания в лингвистике).

За еще более подробной информацией по данной версии - милости просим к авторам.

Tigers Team.