<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<title><![CDATA[Серый форум &mdash; Как считывать несколько строк поочередно?]]></title>
		<link>http://forum.script-coding.com/viewtopic.php?id=10670</link>
		<atom:link href="http://forum.script-coding.com/extern.php?action=feed&amp;tid=10670&amp;type=rss" rel="self" type="application/rss+xml" />
		<description><![CDATA[Недавние сообщения в теме «Как считывать несколько строк поочередно?».]]></description>
		<lastBuildDate>Tue, 02 Jun 2015 06:38:10 +0000</lastBuildDate>
		<generator>PunBB</generator>
		<item>
			<title><![CDATA[Re: Как считывать несколько строк поочередно?]]></title>
			<link>http://forum.script-coding.com/viewtopic.php?pid=94312#p94312</link>
			<description><![CDATA[<div class="quotebox"><cite>Turambar пишет:</cite><blockquote><p>Возникло ещё два вопроса.</p></blockquote></div><p><span style="color: green"><strong>Turambar</strong>, одна тема — <a href="http://forum.script-coding.com/rules.html#3.11.">один вопрос</a>.</span></p>]]></description>
			<author><![CDATA[null@example.com (teadrinker)]]></author>
			<pubDate>Tue, 02 Jun 2015 06:38:10 +0000</pubDate>
			<guid>http://forum.script-coding.com/viewtopic.php?pid=94312#p94312</guid>
		</item>
		<item>
			<title><![CDATA[Re: Как считывать несколько строк поочередно?]]></title>
			<link>http://forum.script-coding.com/viewtopic.php?pid=94310#p94310</link>
			<description><![CDATA[<p>Огромное спасибо. Возникло ещё два вопроса. Надеюсь, последние.<br />Суть такая. Я беру гугл-таблицу (через UrlDownloadToFile сконвертированный csv-файл), копирую и отправляю в чат содержимое одной из ячеек в том случае, если некоторые ячейки в следующих столбцах пусты. Но две проблемы.</p><p>1. Как сделать в RegExMatch присвоение переменной только части искомого выражения?<br />Пример из инструкции:<br /></p><div class="codebox"><pre><code>RegExMatch(&quot;abcXYZ123&quot;, &quot;abc(.*)123&quot;, SubPat)  ; Возвращает 1 и сохраняет &quot;XYZ&quot; в SubPat1</code></pre></div><p>Вот эти скобки в середине... они у меня просто не работают. Возвращается мне почему-то вся строка, а не та её часть, которую я ограничил скобками.</p><p>2. Можно ли сделать так, чтобы скрипт не открывал чат (SendInput и Sleep) в случае, если искомое&nbsp; через RegExMatch выражение в строке не найдено?</p><div class="codebox"><pre><code>
!3::Pause
!1::            
UrlDownloadToFile, https://docs.google.com/spreadsheets/d/11bQVUu5hbxbDxjetzi7htThVMiPu_8Qp6QvMreSaypE/export?exportFormat=csv, %A_ScriptDir%\Blacklist.csv ;Берём конвертированный список
File = %A_ScriptDir%\Blacklist.csv      ; открываем сохранённый файл
Loop, Read, %File%
{
    RegExMatch(A_LoopReadLine, &quot;(/id\s.*?_.*)?,.*?,.*?,.*?,.*?,,&quot;, id)
    SendInput, {F6}%id%{Enter}
    Sleep, 1000
}
FileDelete, %A_ScriptDir%\Blacklist.csv
!2::Reload
Return</code></pre></div>]]></description>
			<author><![CDATA[null@example.com (Turambar)]]></author>
			<pubDate>Tue, 02 Jun 2015 04:35:42 +0000</pubDate>
			<guid>http://forum.script-coding.com/viewtopic.php?pid=94310#p94310</guid>
		</item>
		<item>
			<title><![CDATA[Re: Как считывать несколько строк поочередно?]]></title>
			<link>http://forum.script-coding.com/viewtopic.php?pid=94271#p94271</link>
			<description><![CDATA[<div class="codebox"><pre><code>
F3::
#IfWinActive GTA:SA:MP
File = C:\Users\user\Documents\test.txt

Loop, Read, %File%
{
    SendInput, {F6}%A_LoopReadLine%{Enter}
    Sleep, 500
}
Return
</code></pre></div>]]></description>
			<author><![CDATA[null@example.com (YMP)]]></author>
			<pubDate>Sun, 31 May 2015 03:30:56 +0000</pubDate>
			<guid>http://forum.script-coding.com/viewtopic.php?pid=94271#p94271</guid>
		</item>
		<item>
			<title><![CDATA[Как считывать несколько строк поочередно?]]></title>
			<link>http://forum.script-coding.com/viewtopic.php?pid=94267#p94267</link>
			<description><![CDATA[<p>Здравствуйте.</p><p>Требуется сделать вот что. Существует готовый текстовый файл с именами игроков в формате<br />/id Ivan_Ivanov<br />/id Petya_Ivanov<br />/id Vasya_Pupkin</p><p>Мне нужно, чтобы скрипт сам поочерёдно выдавал в чат игры эти строки.<br />С одной строкой понятно. Как-то так.</p><div class="codebox"><pre><code>F3::
#IfWinActive GTA:SA:MP
File = C:\Users\user\Documents\test.txt

FileRead, out, %File%
loop, parse, out, `n, `r
{
    Total_Stings:=a_index    ; Посчитали строки и присвоили их количество переменной Total_Stings
    If A_LoopField
        Num++
}

Loop
{
    FileRead, read, %File%
    
    {

RegExMatch(read, &quot;.*&quot;, id)
        SendInput, {F6}%id%{Enter}    ; Берём из файла всю строку (.*) и выводим в чат
        Sleep, 500
        
    }

if a_index = %Total_Stings%   ; Повторяем вывод столько раз, сколько строк
   break
}


return</code></pre></div><p>По нажатию клавиши F3, скрипт считает количество строк в документе. Далее повторяет вывод в чат строки столько раз, сколько у нас строк в документе.</p><p>Замечательно. Но как научить его идти дальше - брать содержимое второй строки, третьей, четёртой? </p><p>Господа, как это можно реализовать?</p><p>P.S: извиняюсь за кривость кода и заимствование его частей из других тем на форуме.</p>]]></description>
			<author><![CDATA[null@example.com (Turambar)]]></author>
			<pubDate>Sat, 30 May 2015 23:31:18 +0000</pubDate>
			<guid>http://forum.script-coding.com/viewtopic.php?pid=94267#p94267</guid>
		</item>
	</channel>
</rss>
