1 (изменено: pro100_AHK, 2016-01-27 21:34:53)

Тема: AHK: Поиск текста в блокноте и вывод его в окне

Здравствуйте. Помогите с реализацией данного скрипта или же натолкните на нужный путь. Строго не судите, только учусь

Что нужно:
Есть блокнот file.txt с информацией. Нужно что бы скрипт искал что я ввожу и выводил в окно уже ответ, но если нету в блокноте того что ищу то выводил сообщения об этом.
Например:
1.GUI поиска: s4322 , а GUI ответа: 2133
2.GUI поиска: s9855 , а GUI ответа: Нету содержимого

Помогите пожалуйста реализовать это. Я знаю это не тяжело но я только учусь. Спасибо заранее!

Post's attachments

Безымянный.png
Безымянный.png 19.05 kb, 15 downloads since 2016-01-27 

You don't have the permssions to download the attachments of this post.

2 (изменено: yalanne, 2016-01-29 16:02:58)

Re: AHK: Поиск текста в блокноте и вывод его в окне

; Создаем gui.

Gui, add,Edit
Gui, add,button,Gbt1,Искать ; bt1 - метка перехода на кнопке.
Gui,Show,w170 ; показываем окно с шириной 170p
return

;событие на клик кнопки.
bt1:
GuiControlGet,Edit1 ;получаем значение edit поля.
finded_list := "" ; очистка с предыдущего результата.
loop,read,file.txt,`n ;читаем содержимое file.txt по строчно. 
	RegExMatch(A_LoopReadLine,"^" Edit1 " send (\d+)",var) ; ищем и извлекаем текст  подходящий
	;под шаблон "[поиск_с_начала_строки][текст_в_edit_поле][пробел_send_пробел][любое_кол-во цифр круглые скобки занесут это значение в переменную][конец_строки]".
	,var1 and (finded_list .= (finded_list ? " и " : "") var1) ; если есть совподение поиска, то перечесляем через "и" все значения.

msgbox % finded_list  ; выводим найденное.
return ; конец.

3

Re: AHK: Поиск текста в блокноте и вывод его в окне

Спасибо огромное.
Но я увидел проблемку. Скрипт не хочет искать дальше совпадения если в строке есть в конце пробелы.
http://s8.hostingkartinok.com/uploads/images/2016/01/bf4bb4214c21d25eb07168ffcfd22906.png

4 (изменено: yalanne, 2016-01-28 13:19:09)

Re: AHK: Поиск текста в блокноте и вывод его в окне

Удали знак $ в скрипте.

5

Re: AHK: Поиск текста в блокноте и вывод его в окне

yalanne, а как задать путь расположения текстового файла для поиска?
Пробовал так:

loop,read, d:\file.txt,`n

Не получилось.

6

Re: AHK: Поиск текста в блокноте и вывод его в окне

Оффтоп:
yalanne, а зачем тут нужен третий параметр?

loop,read, d:\file.txt,`n

7 (изменено: yalanne, 2016-01-29 16:19:42)

Re: AHK: Поиск текста в блокноте и вывод его в окне

Malcev, ошибся, думал как и в Loop, Parse третий параметр символ разделения.
becauseim, Да вроде работает, что и с третьим параметром и без него(в первом моем посте тоже работает.)

loop,read,C:\file.txt
msgbox % A_LoopReadLine