Total Commander Forum Index Total Commander
Форум поддержки пользователей Total Commander
Сайты: Все о Total Commander | Totalcmd.net | Ghisler.com | RU.TCKB
 
 RulesRules   SearchSearch   FAQFAQ   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

Множественный поиск

 
Post new topic   Reply to topic    Total Commander Forum Index -> Общие вопросы printer-friendly view
View previous topic :: View next topic  
Author Message
tumanovalex



Joined: 10 Jan 2007
Posts: 17

Post (Separately) Posted: Sat Dec 01, 2018 23:47    Post subject: Множественный поиск Reply with quote

Есть большая база текстовых документов (doc, docx, rtf, архивы zip). При поступлении нового документа нужно проверить, встречаются ли указанные в нем строки (каждая строка от 3 до 18 символов находится на отдельной строке нового документа) в базе документов. Количество строк, которые нужно проверить, может достигать нескольких десятков. Строки, которые нужно найти, в настоящее время в файле RTF, но можно перевести в обычный текстовой файл. Подставлять по одной строке и искать - очень утомительно.Можно ли автоматизировать тотал так, чтобы он выбирал из заданного файла по одной строке, искал в заданной директории с заданными параметрами поиска (имя и расширение файла, возможность поиска по архивам, различные кодировки и др.) и выводил бы в другой файл найденную строку и полное имя файла, в котором эта строка найдена? Если в принципе этот процесс можно автоматизировать, то посоветуйте, пожалуйста, ресурсы, изучив которые я бы попробовал это сделать.
 !  Avada:
Тема не для "Автоматизации". Перенесено в "Общие вопросы".
Back to top
View user's profile Send private message
Flasher



Joined: 06 Nov 2009
Posts: 14229
Location: Москва

Post (Separately) Posted: Sun Dec 02, 2018 01:56    Post subject: Reply with quote

tumanovalex
Ищите регуляркой: ^(строка1|строка2|строка3)$
Перечисленные опции поиска все на виду. Специальным образом выводить найденное в текстовые файлы ТС не умеет. Только сохранить в файл выделенный список найденного. Строки в найденном придётся искать самостоятельно, тем более, что их в файле может быть несколько.
Как вариант — это плагины PCRESearch или WinScript Advanced Content с выводом нужной информации в колонки, которые при желании можно скопировать соотв. командой.
_________________
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Back to top
View user's profile Send private message
tumanovalex



Joined: 10 Jan 2007
Posts: 17

Post (Separately) Posted: Sun Dec 02, 2018 21:12    Post subject: Reply with quote

Спасибо большое за подсказку, попробую. Перечень файлов тоже существенно упростит работу. Причем, как я понимаю, будут найдены за один проход все файлы с нужными строками. А если я сделаю из файла со строками программно очень длинную строку ^(строка1|строка2|строка3...)$, потом можно ее будет вставить в поле для поиска? Или там есть ограничения на число символов?
Back to top
View user's profile Send private message
Flasher



Joined: 06 Nov 2009
Posts: 14229
Location: Москва

Post (Separately) Posted: Sun Dec 02, 2018 21:44    Post subject: Reply with quote

Ограничение в поле "С текстом:" = 128 символов.
И на этот случай есть страница поиска с плагинами (textsearch и Office2007), где без проблем можно объединить несколько подобных регулярок.
_________________
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Back to top
View user's profile Send private message
tumanovalex



Joined: 10 Jan 2007
Posts: 17

Post (Separately) Posted: Tue Dec 04, 2018 16:44    Post subject: Reply with quote

Спасибо большое за ответы. Сделал регулярное выражение из 2 коротких строк ^(CN036742614BO38DB|CN0KF87Y744453)$, установил флаг "Регулярные выражение" (скриншот https://yadi.sk/i/CX3cuV2216dQoA). ТС ничего не обнаружил. По отдельности все ищется нормально. Что я делаю неправильно?
Back to top
View user's profile Send private message
Flasher



Joined: 06 Nov 2009
Posts: 14229
Location: Москва

Post (Separately) Posted: Tue Dec 04, 2018 18:29    Post subject: Reply with quote

Всё правильно. Это баг Тотала. Sad
_________________
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Back to top
View user's profile Send private message
tumanovalex



Joined: 10 Jan 2007
Posts: 17

Post (Separately) Posted: Tue Dec 04, 2018 21:00    Post subject: Reply with quote

А что посоветуете для решения задачи? Попробовать написать плагин? Или это тоже не поможет, из плагина не удастся многократно вызывать поиск?
Back to top
View user's profile Send private message
Flasher



Joined: 06 Nov 2009
Posts: 14229
Location: Москва

Post (Separately) Posted: Tue Dec 04, 2018 23:41    Post subject: Reply with quote

Ну, вообще для doc в отличии от docx ТС у меня находит совпадения.
А плагины я назвал выше. TextSearch, PCRESearch либо скрипт для WAC + xd2txcom.dll, например.
_________________
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Back to top
View user's profile Send private message
tumanovalex



Joined: 10 Jan 2007
Posts: 17

Post (Separately) Posted: Thu Dec 06, 2018 11:30    Post subject: Reply with quote

Flasher wrote:
Ну, вообще для doc в отличии от docx ТС у меня находит совпадения.
А плагины я назвал выше. TextSearch, PCRESearch либо скрипт для WAC + xd2txcom.dll, например.
Проверил. у меня тоже в doc находит. а в docx - нет. Попробую рекомендуемые Вами плагины.
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic    Total Commander Forum Index -> Общие вопросы All times are GMT + 4 Hours
Page 1 of 1

 
Jump to:  
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