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.