<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
	<title type="html"><![CDATA[Серый форум &mdash; AHK: Узнать номера ячеек в которых есть символ]]></title>
	<link rel="self" href="https://forum.script-coding.com/extern.php?action=feed&amp;tid=14029&amp;type=atom" />
	<updated>2018-08-10T18:55:22Z</updated>
	<generator>PunBB</generator>
	<id>https://forum.script-coding.com/viewtopic.php?id=14029</id>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Узнать номера ячеек в которых есть символ]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=127789#p127789" />
			<content type="html"><![CDATA[<p>Я не настаиваю на использовании массива, а лишь предлагаю своё видение, представляющее таблицу в виде строк и столбцов. Двумерная матрица, или массив массивов. Конечно, если нужно просто получить некое значение из строки и забыть про неё, то мой подход не совсем корректен, но в контексте звучит этот термин - &quot;таблица&quot;.</p><p>Дальнейшие рассуждения, правда, ведут меня по пути навязывания своей точки зрения и не зная всей задачи, я могу ошибаться.<br />Благодарю за критику.</p>]]></content>
			<author>
				<name><![CDATA[KusochekDobra]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=33846</uri>
			</author>
			<updated>2018-08-10T18:55:22Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=127789#p127789</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Узнать номера ячеек в которых есть символ]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=127788#p127788" />
			<content type="html"><![CDATA[<p><strong>KusochekDobra</strong>,<br /></p><div class="quotebox"><blockquote><p>To split a string that is in standard CSV (comma separated value) format, use a parsing loop since it has built-in CSV handling.</p></blockquote></div><p><a href="https://autohotkey.com/docs/commands/StringSplit.htm#Remarks_8">https://autohotkey.com/docs/commands/St … #Remarks_8</a><br /></p><div class="quotebox"><blockquote><p>If this parameter is CSV, InputVar will be parsed in standard comma separated value format. Here is an example of a CSV line produced by MS Excel:</p><p>&quot;first field&quot;,SecondField,&quot;the word &quot;&quot;special&quot;&quot; is quoted literally&quot;,,&quot;last field, has literal comma&quot;</p></blockquote></div><p><a href="https://autohotkey.com/docs/commands/LoopParse.htm">https://autohotkey.com/docs/commands/LoopParse.htm</a></p>]]></content>
			<author>
				<name><![CDATA[Malcev]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=26930</uri>
			</author>
			<updated>2018-08-10T17:35:16Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=127788#p127788</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Узнать номера ячеек в которых есть символ]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=127787#p127787" />
			<content type="html"><![CDATA[<p>Безусловно, но если заглянуть в перспективу и там окажется, что какие-то ещё данные из таблицы будут нужны, то &quot;дешевле&quot; их получать по индексу, а учитывая постановку задачи, это выглядит вероятным более чем.</p>]]></content>
			<author>
				<name><![CDATA[KusochekDobra]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=33846</uri>
			</author>
			<updated>2018-08-10T16:05:34Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=127787#p127787</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Узнать номера ячеек в которых есть символ]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=127786#p127786" />
			<content type="html"><![CDATA[<p>Мне кажется в данном случае не очень хорошо заносить всё в массив и потом искать по всему массиву. Лучше сразу, перебирая содержимое строчки, записывать позицию символа. Если попалась пустота, то ничего не записывать.</p>]]></content>
			<author>
				<name><![CDATA[ypppu]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=5974</uri>
			</author>
			<updated>2018-08-10T15:51:23Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=127786#p127786</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Узнать номера ячеек в которых есть символ]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=127785#p127785" />
			<content type="html"><![CDATA[<p>Почитайте так же про <a href="https://autohotkey.com/docs/Objects.htm#Usage_Simple_Arrays">использование массивов</a> подробнее. Наиполезнейший инструмент для организации данных в удобной упаковке, с набором методов, что называется - &quot;из коробки&quot;.</p>]]></content>
			<author>
				<name><![CDATA[KusochekDobra]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=33846</uri>
			</author>
			<updated>2018-08-10T14:57:56Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=127785#p127785</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Узнать номера ячеек в которых есть символ]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=127784#p127784" />
			<content type="html"><![CDATA[<p>Спасибо большое.</p>]]></content>
			<author>
				<name><![CDATA[Belo4kaVspishka]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=39407</uri>
			</author>
			<updated>2018-08-10T14:46:23Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=127784#p127784</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Узнать номера ячеек в которых есть символ]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=127783#p127783" />
			<content type="html"><![CDATA[<p>Вообще, для работы с таблицами/матрицами идеальны массивы, особенно, если полученные данные изменяются в течение работы сценария.<br /><a href="https://autohotkey.com/docs/commands/StringSplit.htm">StrSplit()</a> - формирует из строки массив по символу-разделителю, у Вас это запятая, таким образом, содержимое между ними будет доступно по индексу, например 42:<br /></p><div class="codebox"><pre><code>
str := &quot;ненужная часть строки,,Y,,,,,,,,N,,,,,Y,,,,,,(около 90 ячеек),0&quot;
resultArray := StrSplit(str, &quot;,&quot;)
MsgBox,% resultArray[1]	; Первый элемент
MsgBox,% resultArray[42]	; 42 элемент
</code></pre></div><p>Чтобы перебрать все элементы массива в поиске нужного символа символа в каждом из них:<br /></p><div class="codebox"><pre><code>
str := &quot;ненужная часть строки,,Y,,,,,,,,N,,,,,Y,,,,,,(около 90 ячеек),0&quot;
resultArray := StrSplit(str, &quot;,&quot;)

indexLetters := FindLetter(resultArray, &quot;Y&quot;)
completeStr := &quot;Всего найдено совпадений &#039;&quot; . indexLetters.Length() . &quot;&#039;, в ячейках:`n&quot;
For k, v in indexLetters
	completeStr .= v . &quot;`n&quot;
MsgBox,% completeStr
return
FindLetter(array, letter) {
	findedLetters := []
	For k, v in array
		if (InStr(v, letter))
			findedLetters.Push(k)
	Return findedLetters
}
</code></pre></div>]]></content>
			<author>
				<name><![CDATA[KusochekDobra]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=33846</uri>
			</author>
			<updated>2018-08-10T14:42:42Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=127783#p127783</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Узнать номера ячеек в которых есть символ]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=127782#p127782" />
			<content type="html"><![CDATA[<p><strong>qqlexa</strong>, а как эта команда поможет автору вопроса?<br /><strong>Belo4kaVspishka</strong>,<br /><a href="https://autohotkey.com/docs/commands/LoopParse.htm">https://autohotkey.com/docs/commands/LoopParse.htm</a></p>]]></content>
			<author>
				<name><![CDATA[Malcev]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=26930</uri>
			</author>
			<updated>2018-08-10T14:17:44Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=127782#p127782</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Узнать номера ячеек в которых есть символ]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=127781#p127781" />
			<content type="html"><![CDATA[<p>Играйтесь. <a href="https://autohotkey.com/docs/commands/StringLen.htm">https://autohotkey.com/docs/commands/StringLen.htm</a></p>]]></content>
			<author>
				<name><![CDATA[qqlexa]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=39096</uri>
			</author>
			<updated>2018-08-10T13:50:53Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=127781#p127781</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[AHK: Узнать номера ячеек в которых есть символ]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=127780#p127780" />
			<content type="html"><![CDATA[<p>Здравствуйте, уважаемые форумчане. Имеется строка которая представляет собой строчку из скачанной в SCV формат таблицу, в девяносто столбцах этой таблицы может быть символ Y или N или пустота (в каждой ячейке по одному символу или пустота). В скачанном виде ячейки разделяются запятой, потому шаблон выглядит примерно так (он укорочен):<br /></p><div class="codebox"><pre><code>ненужная часть строки,,Y,,,,,,,,N,,,,,Y,,,,,,(около 90 ячеек),0,</code></pre></div><p>Есть две задачи:<br />1) узнать все номера этих ячеек (начиная с 1) в которых есть, допустим, символ Y;<br />2) узнать какое значение конкретной ячейки (например 42).</p><p>За решение или подсказку в решении любой из задач я буду вам очень благодарен.</p>]]></content>
			<author>
				<name><![CDATA[Belo4kaVspishka]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=39407</uri>
			</author>
			<updated>2018-08-10T12:47:49Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=127780#p127780</id>
		</entry>
</feed>
