<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<title><![CDATA[Серый форум &mdash; AHK: Помогите разобраться с регулярным выражением.]]></title>
		<link>https://forum.script-coding.com/viewtopic.php?id=7640</link>
		<atom:link href="https://forum.script-coding.com/extern.php?action=feed&amp;tid=7640&amp;type=rss" rel="self" type="application/rss+xml" />
		<description><![CDATA[Недавние сообщения в теме «AHK: Помогите разобраться с регулярным выражением.».]]></description>
		<lastBuildDate>Sat, 29 Sep 2012 14:15:50 +0000</lastBuildDate>
		<generator>PunBB</generator>
		<item>
			<title><![CDATA[Re: AHK: Помогите разобраться с регулярным выражением.]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=64369#p64369</link>
			<description><![CDATA[<p>Не могу не добавить (т.е. убавить) к примеру, который предложил <strong>Александр_</strong> <img src="//forum.script-coding.com/img/smilies/smile.png" width="15" height="15" /><br />(Не особо оно там и надо, но... )<br /></p><div class="codebox"><pre><code>str := &quot;ааа76аааббббпппп74ава72вава&quot;
while(r := RegExMatch(str, &quot;\d+&quot;, s , r ? r+StrLen(s) : 1))
   MsgBox %s%</code></pre></div>]]></description>
			<author><![CDATA[null@example.com (Irbis)]]></author>
			<pubDate>Sat, 29 Sep 2012 14:15:50 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=64369#p64369</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Помогите разобраться с регулярным выражением.]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=64357#p64357</link>
			<description><![CDATA[<p>Спасибо, доступно объяснили. Я всё понял, что мне надо было. Респект и уважуха этому форуму ;-)</p>]]></description>
			<author><![CDATA[null@example.com (hydralisk)]]></author>
			<pubDate>Sat, 29 Sep 2012 09:59:11 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=64357#p64357</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Помогите разобраться с регулярным выражением.]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=64354#p64354</link>
			<description><![CDATA[<div class="quotebox"><cite>hydralisk пишет:</cite><blockquote><p>У меня родился такой вариант: <br />1. Запускаем цикл <br />2. Ищем первое вхождение.<br />3. Если найдено, то следующая итерация.<br />4. В следующей итерации ищем вхождение в первичной строке, но начинаем с позиции уже где уже нашли вхождение. <br />5. Если ничего не найдено - завершаем цикл.</p><p>Так будет правильно? Есть другие варианты?</p></blockquote></div><p>Правильно:<br /></p><div class="codebox"><pre><code>str := &quot;ааа76аааббббпппп74ава72вава&quot;
r := RegExMatch(str, &quot;\d+&quot;, s)
while(r)
{
   MsgBox %s%
   r := RegExMatch(str, &quot;\d+&quot;, s, r+StrLen(s))
}</code></pre></div><p>или так:<br /></p><div class="codebox"><pre><code>str := &quot;ааа76аааббббпппп74ава72вава&quot;
r := RegExMatch(str, &quot;P)\d+&quot;, s)
while(r)
{
   MsgBox % SubStr(str, r, s)
   r := RegExMatch(str, &quot;P)\d+&quot;, s, r+s)
}</code></pre></div>]]></description>
			<author><![CDATA[null@example.com (Александр_)]]></author>
			<pubDate>Sat, 29 Sep 2012 09:08:44 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=64354#p64354</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Помогите разобраться с регулярным выражением.]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=64352#p64352</link>
			<description><![CDATA[<div class="codebox"><pre><code>str := &quot;123qwe234wer456ter567asd768&quot;

varIndex := 1
isPriorLoopFieldIsNumber := false

loop, Parse, str
{
    if A_LoopField is Number
        var%varIndex% .= A_LoopField, isPriorLoopFieldIsNumber := true
    else if (isPriorLoopFieldIsNumber = true)
        varIndex += 1, isPriorLoopFieldIsNumber := false
    else isPriorLoopFieldIsNumber := false
}

loop %varIndex%
    out .= var%A_Index% &quot;`n&quot;

MsgBox % out</code></pre></div>]]></description>
			<author><![CDATA[null@example.com (creature.ws)]]></author>
			<pubDate>Sat, 29 Sep 2012 09:00:53 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=64352#p64352</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Помогите разобраться с регулярным выражением.]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=64351#p64351</link>
			<description><![CDATA[<div class="codebox"><pre><code>RegExMatch(&quot;ааа76аааббббпппп74ава72вава&quot;, &quot;(\d+)\D+(\d+)\D+(\d+)&quot;, s)
msgbox %s1% - %s2% -  %s3%</code></pre></div>]]></description>
			<author><![CDATA[null@example.com (Irbis)]]></author>
			<pubDate>Sat, 29 Sep 2012 08:42:17 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=64351#p64351</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Помогите разобраться с регулярным выражением.]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=64350#p64350</link>
			<description><![CDATA[<p>Еще пробовал такой код:<br /></p><div class="codebox"><pre><code>RegExMatch(&quot;ааа76аааббббпппп74ава72вава&quot;, &quot;(\d+)(\d+)&quot;, s)
msgbox %s1% - %s2% -  %s3%</code></pre></div><p>Тогда скрипт вообще ничего не находит. <br />P.S. Сейчас дошло. может между скобками нужно поставить *<br />Домой приеду - проверю. Под рукой машины нет.</p>]]></description>
			<author><![CDATA[null@example.com (hydralisk)]]></author>
			<pubDate>Sat, 29 Sep 2012 07:24:21 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=64350#p64350</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Помогите разобраться с регулярным выражением.]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=64349#p64349</link>
			<description><![CDATA[<p>У меня родился такой вариант: <br />1. Запускаем цикл <br />2. Ищем первое вхождение.<br />3. Если найдено, то следующая итерация.<br />4. В следующей итерации ищем вхождение в первичной строке, но начинаем с позиции уже где уже нашли вхождение. <br />5. Если ничего не найдено - завершаем цикл.</p><p>Так будет правильно? Есть другие варианты?</p>]]></description>
			<author><![CDATA[null@example.com (hydralisk)]]></author>
			<pubDate>Sat, 29 Sep 2012 07:18:08 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=64349#p64349</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Помогите разобраться с регулярным выражением.]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=64346#p64346</link>
			<description><![CDATA[<div class="quotebox"><cite>Александр_ пишет:</cite><blockquote><p>RegExMatch за один вызов выполняет только один поиск, если нужно несколько, то нужно вызывать её в цикле.</p></blockquote></div><p>Подскажите как мне организовать цикл, чтобы в тексте регулярными выражениями перебрать все последовательности цифр.<br />Как доработать этот код (приведенный ниже) чтобы он нашел сначала 76, потом 74, а потом 72?<br /></p><div class="codebox"><pre><code>RegExMatch(&quot;ааа76аааббббпппп74ава72вава&quot;, &quot;(\d+)&quot;, s)
msgbox %s1% - %s2% -  %s3%</code></pre></div>]]></description>
			<author><![CDATA[null@example.com (hydralisk)]]></author>
			<pubDate>Sat, 29 Sep 2012 04:22:30 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=64346#p64346</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Помогите разобраться с регулярным выражением.]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=64343#p64343</link>
			<description><![CDATA[<div class="quotebox"><cite>hydralisk пишет:</cite><blockquote><p>В справке написано, что все совпадения записываются в массив.</p></blockquote></div><p>Там написано, что все неименованные подшаблоны записываются таким образом. RegExMatch за один вызов выполняет только один поиск, если нужно несколько, то нужно вызывать её в цикле.<br />Да и название темы исправь, <a href="http://forum.script-coding.com/viewtopic.php?id=6148">см. правила</a>.</p>]]></description>
			<author><![CDATA[null@example.com (Александр_)]]></author>
			<pubDate>Fri, 28 Sep 2012 21:29:29 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=64343#p64343</guid>
		</item>
		<item>
			<title><![CDATA[AHK: Помогите разобраться с регулярным выражением.]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=64342#p64342</link>
			<description><![CDATA[<p>Добрый день всем!<br />Для познания азов регэксп написал такой скрипт:<br /></p><div class="codebox"><pre><code>RegExMatch(&quot;уа76фывафывацу76фавфв&quot;, &quot;(\d+)&quot;, s)
msgbox %s1% - %s2% -  %s3%</code></pre></div><p>И не могу понять почему у меня записывается найденное значение только в s1. <br />В s1 записано 76, а в s2 и s3 ничегошеньки нет.<br />В справке написано, что все совпадения записываются в массив. </p><p>Пробовал такой вариант:<br /></p><div class="codebox"><pre><code>RegExMatch(&quot;уа76фывафывацу76фавфв&quot;, &quot;(76)&quot;, s)
msgbox %s1% - %s2% -  %s3%</code></pre></div><p>И тоже самое. Подскажите что я неправильно делаю. <img src="//forum.script-coding.com/img/smilies/neutral.png" width="15" height="15" /></p>]]></description>
			<author><![CDATA[null@example.com (hydralisk)]]></author>
			<pubDate>Fri, 28 Sep 2012 19:59:02 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=64342#p64342</guid>
		</item>
	</channel>
</rss>
