<?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=10322</link>
		<atom:link href="https://forum.script-coding.com/extern.php?action=feed&amp;tid=10322&amp;type=rss" rel="self" type="application/rss+xml" />
		<description><![CDATA[Недавние сообщения в теме «AHK: Перенос фрагмента нумер-го текста в место, соответствующее номеру».]]></description>
		<lastBuildDate>Tue, 13 Aug 2019 15:21:00 +0000</lastBuildDate>
		<generator>PunBB</generator>
		<item>
			<title><![CDATA[Re: AHK: Перенос фрагмента нумер-го текста в место, соответствующее номеру]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=135532#p135532</link>
			<description><![CDATA[<p>Как вставку производить не в середину строки, а после нее? <br /></p><div class="codebox"><pre><code>txt = 
( 
Строка1Строка[[2222222222]]Строка1Строка1Строка
Строка2Строка2Строка2Строка2Строка2Строка2Строка
Строка3Строка3Строка3Строка3Строка3Строка3Строка
Строка4Строка[[3563373]]Строка4Строка4Строка
Строка5Строка5Строка5Строка5Строка5Строка5Строка
Строка6Строка((3563373))Строка6Строка6Строка
Строка7Строка7Строка7Строка7Строка7Строка7Строка
Строка8Строка((2222222222))Строка8Строка8Строка
) 

While % Pos := (RegExMatch(txt, &quot;\[\[(\d+)]]&quot;, Match, !Pos ? 1 : Pos) + StrLen(Match))
     txt := RegExReplace(RegExReplace(txt, &quot;m`a).*?\(\(&quot; Match1 &quot;\)\)[^\R]*\R?(?CCallout)&quot;), &quot;(\Q&quot; Match &quot;\E)&quot;, &quot;$1`n&quot; Matches, , 1), Matches := &quot;&quot;
MsgBox % txt
Return

Callout(Match) {
    Global Matches .= Match    
}</code></pre></div>]]></description>
			<author><![CDATA[null@example.com (DD)]]></author>
			<pubDate>Tue, 13 Aug 2019 15:21:00 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=135532#p135532</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Перенос фрагмента нумер-го текста в место, соответствующее номеру]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=135522#p135522</link>
			<description><![CDATA[<p><strong></strong></p>]]></description>
			<author><![CDATA[null@example.com (DD)]]></author>
			<pubDate>Mon, 12 Aug 2019 19:03:12 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=135522#p135522</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Перенос фрагмента нумер-го текста в место, соответствующее номеру]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=135507#p135507</link>
			<description><![CDATA[<p>А как бы строки с числами в круглых скобках — перенести и вставить после строк, с числами в квадратных скобках? —<br /></p><div class="codebox"><pre><code>СтрокаСтрока[[2222222222]]СтрокаСтрокаСтрока
СтрокаСтрокаСтрокаСтрокаСтрокаСтрокаСтрока
СтрокаСтрокаСтрокаСтрокаСтрокаСтрокаСтрока
СтрокаСтрока[[3563373]]СтрокаСтрокаСтрока
СтрокаСтрокаСтрокаСтрокаСтрокаСтрокаСтрока
СтрокаСтрока((3563373))СтрокаСтрокаСтрока
СтрокаСтрокаСтрокаСтрокаСтрокаСтрокаСтрока
СтрокаСтрока((2222222222))СтрокаСтрокаСтрока</code></pre></div><div class="codebox"><pre><code>СтрокаСтрока[[2222222222]]СтрокаСтрокаСтрока
СтрокаСтрока((2222222222))СтрокаСтрокаСтрока
СтрокаСтрокаСтрокаСтрокаСтрокаСтрокаСтрока
СтрокаСтрокаСтрокаСтрокаСтрокаСтрокаСтрока
СтрокаСтрока[[3563373]]СтрокаСтрокаСтрока
СтрокаСтрока((3563373))СтрокаСтрокаСтрока
СтрокаСтрокаСтрокаСтрокаСтрокаСтрокаСтрока
СтрокаСтрокаСтрокаСтрокаСтрокаСтрокаСтрока</code></pre></div>]]></description>
			<author><![CDATA[null@example.com (DD)]]></author>
			<pubDate>Mon, 12 Aug 2019 16:16:33 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=135507#p135507</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Перенос фрагмента нумер-го текста в место, соответствующее номеру]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=96336#p96336</link>
			<description><![CDATA[<p>Огромное спасибо, Серж! Яростно плюсую))</p>]]></description>
			<author><![CDATA[null@example.com (DD)]]></author>
			<pubDate>Sun, 09 Aug 2015 00:36:41 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=96336#p96336</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Перенос фрагмента нумер-го текста в место, соответствующее номеру]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=96321#p96321</link>
			<description><![CDATA[<div class="codebox"><pre><code>txt = 
( 
^@7896555@текст-с-неопределенным
-количеством-строк^
просто текст
^@1999@текст-с-
неопределенным-количеством-
строк^
[[1999]]
^@7896555@ещё текст^

[[7896555]]
просто текст 
) 

While % Pos := (RegExMatch(txt, &quot;\[\[(\d+)]]&quot;, Match, !Pos ? 1 : Pos) + StrLen(Match))
     txt := RegExReplace(RegExReplace(txt, &quot;\^@&quot; Match1 &quot;@.*?\^\R?(?CCallout)&quot;), &quot;(\Q&quot; Match &quot;\E)&quot;, &quot;$1&quot; Matches, , 1), Matches := &quot;&quot;
MsgBox % txt
Return

Callout(Match) {
    Global Matches .= Match    
}</code></pre></div><p>При любом расположении, и если строк несколько.</p>]]></description>
			<author><![CDATA[null@example.com (serzh82saratov)]]></author>
			<pubDate>Sat, 08 Aug 2015 12:23:16 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=96321#p96321</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Перенос фрагмента нумер-го текста в место, соответствующее номеру]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=96320#p96320</link>
			<description><![CDATA[<div class="codebox"><pre><code>
txt = 
(
[[7896555]]
 
[[1999]]

просто текст
^@1999@текст-с-
неопределенным-количеством-
строк^
^@7896555@текст-с-неопределенным
-количеством-строк^

просто текст
)
 
While % Pos := RegExMatch(txt, &quot;\[\[(\d+)]]&quot;, Match, !Pos ? 1 : Pos)
    txt := RegExReplace(txt, &quot;(.*)(\Q&quot; Match &quot;\E)(.*)(\^@&quot; Match1 &quot;@.*?\^)\R?(.*)&quot;
        , &quot;$1$2$4$3$5&quot;, , 1, Pos), Pos += StrLen(Match)
MsgBox % txt
</code></pre></div><p>На скорую руку. Ограничение: строки вида [[1999]] должны быть выше подходящего под них текста.</p>]]></description>
			<author><![CDATA[null@example.com (serzh82saratov)]]></author>
			<pubDate>Sat, 08 Aug 2015 11:35:46 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=96320#p96320</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Перенос фрагмента нумер-го текста в место, соответствующее номеру]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=96317#p96317</link>
			<description><![CDATA[<p>Появилась необходимость в обработке не последовательно идущих (как в коде выше), а в обработке произвольных цифр, например 7896555, 67574, 547777, 27 и т.п. Допустимо ли подладить под это код? Если нет, подошла бы однократная обработка для файла с произвольными цифрами, т.е. находит в файле, например,&nbsp; <span style="color: green"><strong>^@1999@текст-с-неопределенным-количеством-строк^</strong></span> и единожды переносит в место, где располагается <span style="color: blue"><strong>[[1999]]</strong></span>. </p><p>Что в итоге даёт: <span style="color: blue"><strong>[[1999]]</strong></span><span style="color: green"><strong>^@1999@текст-с-неопределенным-количеством-строк^</strong></span>.</p>]]></description>
			<author><![CDATA[null@example.com (DD)]]></author>
			<pubDate>Fri, 07 Aug 2015 18:59:13 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=96317#p96317</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Перенос фрагмента нумер-го текста в место, соответствующее номеру]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=90345#p90345</link>
			<description><![CDATA[<p>Спасибо огромное!</p>]]></description>
			<author><![CDATA[null@example.com (DD)]]></author>
			<pubDate>Sun, 11 Jan 2015 21:21:13 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=90345#p90345</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Перенос фрагмента нумер-го текста в место, соответствующее номеру]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=90286#p90286</link>
			<description><![CDATA[<p>C <strong>RegExReplace()</strong> компактней получится, но так быстрей.<br /></p><div class="codebox"><pre><code>txt = 
(
текст[[1]]текст[[2]]текст
текст[[3]]текст
текст
текст[[4]]текст
текст
текст[[1]текст]текст
текст[[2]текст]текст
текст[[3]текст]текст
текст[[4]текст]текст
)

while (P1 := 4+StrLen(A_Index)+InStr(txt, &quot;[[&quot; . A_Index . &quot;]]&quot;,0,P1)) &amp;&amp; (P2 := InStr(txt, &quot;[[&quot; . A_Index . &quot;]&quot;,0,P1))
txt := SubStr(txt,1,P1-1) . SubStr(txt,P2,L := 1+InStr(txt,&quot;]&quot;,0,P2+3+StrLen(A_Index))-P2)
     . SubStr(txt,P1,P2-P1) . SubStr(txt,P2+L)
MsgBox % txt</code></pre></div><p>Сноски должны идти подряд, т.е. если не существует [[73]], то [[74]] не будет обработана.</p>]]></description>
			<author><![CDATA[null@example.com (Irbis)]]></author>
			<pubDate>Sun, 11 Jan 2015 07:01:42 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=90286#p90286</guid>
		</item>
		<item>
			<title><![CDATA[AHK: Перенос фрагмента нумер-го текста в место, соответствующее номеру]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=90281#p90281</link>
			<description><![CDATA[<p>Привет!</p><p>Нужно это, в частности, для переноса (в массиве текста) текста сносок — в основной текст. </p><p>Задача в том, чтобы находить внутри угловых скобок цифры с текстом следующего вида — <strong>[[цифры]любой-текст]</strong> — и затем целиком перемещать такое вхождение туда, где в тексте найденным в первом вхождении обрамлённым цифрам соответствуют цифры внутри двойных угловых скобок — <strong>[[цифры]]</strong>. Т.е., например, находит <span style="color: green"><strong>[[74]текст]</strong></span> и переносит найденное туда, где в тексте стоит <span style="color: blue"><strong>[[74]]</strong></span>, что в итоге даст — <span style="color: blue"><strong>[[74]]</strong></span><span style="color: green"><strong>[[74]текст]</strong></span>. Стало быть, это —</p><div class="codebox"><pre><code>текст[[1]]текст[[2]]текст
текст[[3]]текст
текст
текст[[4]]текст
текст
текст[[1]текст]текст
текст[[2]текст]текст
текст[[3]текст]текст
текст[[4]текст]текст</code></pre></div><p>заменив на это —</p><div class="codebox"><pre><code>текст[[1]][[1]текст]текст[[2]][[2]текст]текст
текст[[3]][[3]текст]текст
текст
текст[[4]][[4]текст]текст
текст
тексттекст
тексттекст
тексттекст
тексттекст</code></pre></div>]]></description>
			<author><![CDATA[null@example.com (DD)]]></author>
			<pubDate>Sun, 11 Jan 2015 05:09:08 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=90281#p90281</guid>
		</item>
	</channel>
</rss>
