download.bg
 Вход Списание  Новини  Програми  Статии  Форум  Чат   Абонамент  Топ95   Архив 

Безплатна програма за търсене на дума или израз в множество M$ Word файлове

< 1 2 3 4 5 6 >

Автор
Съобщение
phrozencrew
Пет, 01.07.11, 20:29
Търся си простичка (по възможност portable) програма за търсене в много Word файлове. Нещо от сорта на grep, sed или cat за Word би било чудесно . Но ми се струва, че подобно чудо задължително ще струва кинти. Достатъчно е да може да ми покаже в кой точно файл се намира дадена дума или израз, за да не ровя със search-а на Word, като някакъв ненормален с ужасно много време за губене.
Ще съм благодарен за всякакви идеи. Щото, ако не намеря, ще се наложи да си пиша сам такава.
anonymous
Пет, 01.07.11, 21:06

RE: Безплатна програма за търсене на дума или израз в множество M$ Word файлове

” Търся си простичка (по възможност portable) програма за търсене в много Word файлове. Нещо от сорта на grep, sed или cat за Word би било чудесно . Но ми се струва, че подобно чудо задължително ще струва кинти. Достатъчно е да може да ми покаже в кой точно файл се намира дадена дума или израз, за да не ровя със search-а на Word, като някакъв ненормален с ужасно много време за губене.
Ще съм благодарен за всякакви идеи. Щото, ако не намеря, ще се наложи да си пиша сам такава. „

VBScript: поиск текста в файлах *.doc

Има и много други примерчета... и на Autoit 100% може да се напише нещо подобно...

phrozencrew
Пет, 01.07.11, 22:46

RE: RE: Безплатна програма за търсене на дума или израз в множество M$ Word файлове

VBScript: поиск текста в файлах *.doc

Има и много други примерчета... и на Autoit 100% може да се напише нещо подобно... „

Това е много готина идея! За да може да се ползва и от колегите ми ще трябва да е кликаджийско.
В момента го преработвам за Perl. За Autoit става бая писането, особено ако се добави и търсене с RegEx-и. Реших, че щом ще е търсене на текст, то значи трябва да е Perl. VBA-то на Word-а е абсолютно кастрирано и антипрограмистко, за това ще го цъкам само на идейно ниво, заради обектите в vba.
До тук постигнах известен успех, като може да се търси и по регулярен израз:
use Win32::OLE;
use Win32::OLE::Enum;
use Cwd 'abs_path';
 
$dir = $ARGV[1]; chdir $dir;
@files = <*.doc>; 
$find = $ARGV[0];
 
foreach $file (@files) {
	$doc = Win32::OLE -> GetObject(abs_path($file));
	open (FH,">jgfd75w43589azwq210");
 
	$paragraphs = $doc->Paragraphs();
	$enumerate = new Win32::OLE::Enum($paragraphs);
	while(defined($paragraph = $enumerate->Next())){
		$text = $paragraph->{Range}->{Text};
		print FH "$textn";
	}
	$doc->Close;
	close FH;
 
	open (FH,"<jgfd75w43589azwq210");
	while ($line = <FH>) {
		if($line =~ m/$find/i){
			print "$findt-->t$ARGV[1]\$filen";
			last;
		}
	}
	close FH;
	unlink("jgfd75w43589azwq210");
}

Сорс: search_in_word.pl
Executable: http://uploading.com/files/2e7b686a/search_in_word.exe

Синтаксис:
search_in_word.exe "string" "C:\path\to\word\files" > log_rezult.txt

Остава да го накарам да чете кирилица, да има GUI и да може да рови и в различните тяаблици на множество Excel-ски файлове. Ам като за начало ще почна с GUI-то и кирилицата.

редактиран от phrozencrew на 01.07.11 22:49
phrozencrew
Чет, 07.07.11, 20:04
Така и никой не предложи готова програма за търсене в множество M$ Word файлове. Явно подобна безплатна програма няма или просто не знаем къде да я търсим.
Ако на някой му се наложи да търси много документи (*.doc и *.docx) за определена дума или израз, без да инсталира нищо, може да ползва тоя портабъл, който съм комбинирал от AutoIt за GUI-то и Perl-файла от по-горе. Програмирането е елементарно.
И тъй като съм OpenSource фен прилагам целия код в архива с инструкции как да се компилира perl файла до exe само с perl и няколко пакета.
Програмата изглежда така:

За да работи програмата трябва и двете exe-та да са в една директория:

като се стартира WordSearch.exe GUI-то.
Програмата и сорскода могат да се изтеглят от:
тук
тук или
тук.
Програмата е 32-bit, но всеки, който иска може да си я промени за 64 bit, използвайки сорса. Може да чете и файлове от новите офиси (2007,2010), стига да разполагате с инсталиран съответния офис пакет.
Всички права върху кода и използването на програмата не са запазени и можете да я пренаписвате, копирате и вграждате колкото си искате.

ПС: Докато се ровичках за идеи попаднах на една простичка платена програма, но така и не разбрах за какво точно и искат $30 и то за подобна простотия?!!! Иначе изглежда добре. Може да се замисля да разширя интерфейса на тоя гъдел тук за без-пари, та да се доближи до това шареното.

редактиран от phrozencrew на 07.07.11 21:30
svilen73
Чет, 07.07.11, 20:22
Чудесна програмка Благодаря.
Ако се потрудиш да разпознава и docx ще е супер.

"Съдържа полезен съвет"

ПП : и една молба към администраторите да променят гласовете за такива случаи че "Съдържа полезен съвет" за случая не ми изглежда потходящо.

phrozencrew
Чет, 07.07.11, 21:33

RE: Безплатна програма за търсене на дума или израз в множество M$ Word файлове

” Чудесна програмка Благодаря.
Ако се потрудиш да разпознава и docx ще е супер.

"Съдържа полезен съвет"

ПП : и една молба към администраторите да променят гласовете за такива случаи че "Съдържа полезен съвет" за случая не ми изглежда потходящо.

Мерси за идеята, пичага! Пипнах само един ред в perl файла, за да добавя търсене и в множество docx-файлове:
@files = <*.doc *.docx>;

Perl е толкова приятен и услужлив език, че чак те хваща срам от елементарния код, който е толкова мощен.

electric_cc
Съб, 09.07.11, 13:38
Позволих си да преработя сорса на Еди и се получи следното: SearchWord.rar
Ако няма инсталиран MS Word може да се опитате да копирате и файла MSWORD.OLB. След като се покаже списъкът може да се избере файл и да се отвори. Който желае може да добави нови допълнителни функции. Например банер, който да показва, че програмата търси файлове.

Мисля, че ще работи и на 64 битови машини.

редактиран от electric_cc на 09.07.11 13:39
phrozencrew
Съб, 09.07.11, 15:41

RE: Безплатна програма за търсене на дума или израз в множество M$ Word файлове

” Позволих си да преработя сорса на Еди и се получи следното: SearchWord.rar
Мисля, че ще работи и на 64 битови машини. „
Ехааа!!! Супер е! И сорса си оставил! Работи доста бързо!

PS: Ако се цъкне на Preferences да ползва Microsoft VBScript Regular Expressions 5.5 ще може да се компилира с VB6 и пак да ползва RegEx-и.

редактиран от phrozencrew на 09.07.11 16:27
electric_cc
Нед, 10.07.11, 17:30
SearchWord.rar

Сега съм добавил да търси в TXT и Excel файлове и съм направил някои допълнения за увеличаване на дуракоустойчивостта.

редактиран от electric_cc на 10.07.11 17:31
svilen73
Нед, 10.07.11, 19:22

RE: Безплатна програма за търсене на дума или израз в множество M$ Word файлове

SearchWord.rar

Сега съм добавил да търси в TXT и Excel файлове и съм направил някои допълнения за увеличаване на дуракоустойчивостта. „

редактиран от svilen73 на 10.07.11 19:24

< 1 2 3 4 5 6 >

Коментар

за нас | за разработчици | за реклама | станете автори | in english  © 1998-2024   Experta Ltd.