imho.ws
IMHO.WS  

Вернуться   IMHO.WS > Программы и Операционные системы > Обсуждение программ
Опции темы
Старый 21.09.2006, 22:14     # 1
Kdor
Member
 
Аватар для Kdor
 
Регистрация: 12.05.2002
Адрес: Tabu
Сообщения: 355

Kdor Известность не заставит себя ждать
REQ: Программа построкового сравнения

Собвственно сабж - нужна прога. Вернее хотя бы ее название БЕЗ ссылок. Ссылки сам найду.
Итак прога:
Я ей скармливаю файл. В файле в столбик указаны какие-либо названия (к примеру названия музыкальных релизов). В другом столбике напротив этих названий стоит размер этих релизов.
Задаю условие. К примеру - удали мне все строки, где последовательность букв "house". И в итоговом txt или excel файле получаю уже результат БЕЗ строк, в которых встерчалось данное слово и, соответственно, что напротив названия размер тоже удаляется. Пустые строки при сем действии тоже удаляются, т.е. столбик смещается вверх, если был удален релиз.
И еще чтобы прога могла также сравнивать два файла ПОСТРОЧНО. Т.е. брать стоку из первого файла и сравнивать ее СО ВСЕМИ строками второго файла. Далее вторую строку и так далее. Результат - файл с теми строками, которых нет в предидущем файле.
P.S. Excel в качестве проги не предлогать, имхо работа с формалами не катит. Спасибо.
__________________
Живу ради музыки
Могу долго отсутствовать!!
Kdor вне форума  
Старый 22.09.2006, 20:21     # 2
Molt
Junior Member
 
Регистрация: 21.09.2006
Сообщения: 49

Molt Путь к славе только начался
Ответ - коммандная стока. Данное можно реализовать средствами ком. строки
Molt вне форума  
Старый 22.09.2006, 20:29     # 3
topknot
Junior Member
 
Регистрация: 25.09.2004
Адрес: ніжин
Сообщения: 128

topknot Известность не заставит себя ждатьtopknot Известность не заставит себя ждать
Посмотри в сторону PowerGrep для поиска/удаления/замены и Araxis Merge для сравнения.
topknot вне форума  
Старый 22.09.2006, 20:35     # 4
Cartman
Migel Mod Volos
 
Аватар для Cartman
 
Регистрация: 09.09.2003
Адрес: МПЛ-в почетной д
Сообщения: 7 486

Cartman ГипербогCartman ГипербогCartman ГипербогCartman Гипербог
Cartman ГипербогCartman ГипербогCartman ГипербогCartman ГипербогCartman ГипербогCartman ГипербогCartman ГипербогCartman ГипербогCartman ГипербогCartman ГипербогCartman ГипербогCartman ГипербогCartman ГипербогCartman ГипербогCartman ГипербогCartman ГипербогCartman ГипербогCartman ГипербогCartman ГипербогCartman Гипербог
Molt, можешь предложить варианты раелизации - предлагай, а флудить не за чем
__________________
Все "спасибы" - в приват и в репутацию! не засоряйте форум!!!! © Plague

Небьющаяся игрушка - это игрушка,
которой ребенок может разбить все свои остальные игрушки.

Cartman вне форума  
Старый 22.09.2006, 22:06     # 5
Kdor
Member
 
Аватар для Kdor
 
Регистрация: 12.05.2002
Адрес: Tabu
Сообщения: 355

Kdor Известность не заставит себя ждать
2 Molt
Приведи пример пожалуйста.
__________________
Живу ради музыки
Могу долго отсутствовать!!
Kdor вне форума  
Старый 23.09.2006, 00:33     # 6
Molt
Junior Member
 
Регистрация: 21.09.2006
Сообщения: 49

Molt Путь к славе только начался
Цитата:
Cartman:
можешь предложить варианты раелизации - предлагай, а флудить не за чем
Конкретно - надо хотя бы знать исходные данные. Ведь даже организация списка на многое влияет. Какой формат, и т.д.

Цитата:
Kdor:
И еще чтобы прога могла также сравнивать два файла ПОСТРОЧНО. Т.е. брать стоку из первого файла и сравнивать ее СО ВСЕМИ строками второго файла. Далее вторую строку и так далее. Результат - файл с теми строками, которых нет в предидущем файле.
Т.е тебе надо получить результат - разницу в списках, я верно понял?
Тогда берем Compare It! , поддерживает консоль, загоняем в качестве аргументов исходные файлы и получаем на выходе файл, в котором и будет указана разница между первым и вторым файлом.
PS - можно и в оконном варианте работать, но насколько я понял тебе лучше один раз посидеть, настроить, и пусть работает - материала много, ручками слишком долго кликать, верно? Ну так опять, в батнике цикл делаешь - и все. В нагрузку можно Synchronize It! - это уже синхронизация каталогов, тоже достаточно большие возможности

Для справки. Compare It!

Программа для сравнения и слияния текстовых файлов. Выделение различий в строках, встроенный редактор с подсветкой синтаксиса, печать, отчеты, поддержка различных форматов файлов, коммандной строки.
Molt вне форума  
Старый 23.09.2006, 03:49     # 7
Kdor
Member
 
Аватар для Kdor
 
Регистрация: 12.05.2002
Адрес: Tabu
Сообщения: 355

Kdor Известность не заставит себя ждать
Я в свое время много такого добра перепробовал - названия все счас и не припомню. Что у всех этих программ было плохо, так это принцип их работы. Т.е. они сравнивали своим особым алгоритмом и получалось иногда очень много лишнего добра.
А что мне нужно получить - мне нужно получить в отдельный файл все те строки, что есть в файле №1, но что отсутствую в файле номре 2.
__________________
Живу ради музыки
Могу долго отсутствовать!!
Kdor вне форума  
Старый 23.09.2006, 06:58     # 8
crawler
Full Member
 
Регистрация: 11.12.2002
Сообщения: 864

crawler Имеются все основания чтобы гордиться собойcrawler Имеются все основания чтобы гордиться собойcrawler Имеются все основания чтобы гордиться собойcrawler Имеются все основания чтобы гордиться собойcrawler Имеются все основания чтобы гордиться собойcrawler Имеются все основания чтобы гордиться собойcrawler Имеются все основания чтобы гордиться собойcrawler Имеются все основания чтобы гордиться собойcrawler Имеются все основания чтобы гордиться собойcrawler Имеются все основания чтобы гордиться собой
На самом дле серьезных прог для сравненения крайне мало :
WinMerge - мой выбор (бесплатная, неплохая функциональность)
WinDiff - для странных или очень сложных данных, медленная, кривой фейс.
Compare It!
UltraCompare
Araxis Merge (лично с ней не работал, но стоит она 150 $)

Kdor то что тебе надо - лучше всего таки сделать на Екселе. Но можно и коммандной строкой:
Цитата:
find /v "house" input.txt > output.txt
еще можно поиграться с регулярными выражениями - поищи на форуме Regular expressions или regex, но это будет посложнее. Но задача решаема.
Molt - флудер

Последний раз редактировалось crawler; 23.09.2006 в 07:04.
crawler вне форума  
Старый 23.09.2006, 14:59     # 9
Kdor
Member
 
Аватар для Kdor
 
Регистрация: 12.05.2002
Адрес: Tabu
Сообщения: 355

Kdor Известность не заставит себя ждать
2 crawler
Спасибо.
Но возник вопрос - там именно ПОСТРОКОВОЕ сравнение?
Просто вспоминается такая прога, как Active File Compare.
В одном окне вводим данные одного файла, а в другом - другого.
К примеру данные первого файла

Цитата:
Armin_Van_Buurent-Blue_Fear_2004-UK-CDM-2004-USF
armin_van_buuren-the_longest_day-cdm-2005
Armin_Pres_Electric_Movement-Intruder__Pound-Promo_Vinyl-2004-POW
Данные второго файла

Цитата:
Armin_Pres_Electric_Movement-Intruder__Pound-Promo_Vinyl-2004-POW
Armin_Van_Buurent-Blue_Fear_2004-UK-CDM-2004-USF
armin_van_buuren-the_longest_day-cdm-2005
В итоге программа заметит только ДВА совпадения, так как строка 3 первого файла уже не на своем месте, а выше. Два же других совпадения прога удалит, как это и требуется.


P.S. Если есть возможность, то приведи пример как можно сделать сие буйство с помощью excel'я. Только одно НО - в первом файле два столбца (1-ый - название папки-релиза, а 2-ой размер папки), а в другом один столбец (там размер не указан). Поэтому если будет удаляться строка из первого файла, то она должна это делать вместе с размером и потом делать смещение вверх (удаляется и название релиза-папки и ее размер + удаляются пустые строки).
__________________
Живу ради музыки
Могу долго отсутствовать!!

Последний раз редактировалось Kdor; 23.09.2006 в 15:03.
Kdor вне форума  
Старый 26.09.2006, 12:50     # 10
crawler
Full Member
 
Регистрация: 11.12.2002
Сообщения: 864

crawler Имеются все основания чтобы гордиться собойcrawler Имеются все основания чтобы гордиться собойcrawler Имеются все основания чтобы гордиться собойcrawler Имеются все основания чтобы гордиться собойcrawler Имеются все основания чтобы гордиться собойcrawler Имеются все основания чтобы гордиться собойcrawler Имеются все основания чтобы гордиться собойcrawler Имеются все основания чтобы гордиться собойcrawler Имеются все основания чтобы гордиться собойcrawler Имеются все основания чтобы гордиться собой
ВинМерж определил Armin_Pres_Electric_Movement-Intruder__Pound-Promo_Vinyl-2004-POW как передвинутую строку ( надо в опциях указать, чтобы искал сдвинутые блоки ). подсветил коричневым - несовпадающие строки он подсвечивает желтым.
Может на сложных сравнениях тебе и не подойдет, но попробуй по любому. Если сначала сортирнуть строки по алфавиту, то проблем должно быть меньше.

Как делать в Екселе - не знаю, но знаю что возможно. Спроси, может кто знаком с VBA, должно быть не очень сложно.

Последний раз редактировалось crawler; 26.09.2006 в 12:54.
crawler вне форума  


Ваши права в разделе
Вы НЕ можете создавать новые темы
Вы не можете отвечать в темах.
Вы НЕ можете прикреплять вложения
Вы НЕ можете редактировать свои сообщения

BB код Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход


Часовой пояс GMT +4, время: 18:30.




Powered by vBulletin® Version 3.8.5
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.