<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
	<title type="html"><![CDATA[Серый форум &mdash; CMD/BAT: перевёртыш (зеркальное обращение текста) или Строковые ф-ции]]></title>
	<link rel="self" href="http://forum.script-coding.com/extern.php?action=feed&amp;tid=7582&amp;type=atom" />
	<updated>2012-09-30T10:43:30Z</updated>
	<generator>PunBB</generator>
	<id>http://forum.script-coding.com/viewtopic.php?id=7582</id>
		<entry>
			<title type="html"><![CDATA[Re: CMD/BAT: перевёртыш (зеркальное обращение текста) или Строковые ф-ции]]></title>
			<link rel="alternate" href="http://forum.script-coding.com/viewtopic.php?pid=64398#p64398" />
			<content type="html"><![CDATA[<p>Могли бы не расписывать - результат очевиден при конечном значении, но очевиден только по завершению итераций, что сути проблемы не меняет.<br />Бесконечный цикл был бы крайне полезен, в том числе и сабжевой теме.</p>]]></content>
			<author>
				<name><![CDATA[smaharbA]]></name>
				<uri>http://forum.script-coding.com/profile.php?id=2911</uri>
			</author>
			<updated>2012-09-30T10:43:30Z</updated>
			<id>http://forum.script-coding.com/viewtopic.php?pid=64398#p64398</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: CMD/BAT: перевёртыш (зеркальное обращение текста) или Строковые ф-ции]]></title>
			<link rel="alternate" href="http://forum.script-coding.com/viewtopic.php?pid=64397#p64397" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>smaharbA пишет:</cite><blockquote><p>с конечным циклом все предельно ясно, интерес составляет бесконечный</p></blockquote></div><p>Если непонятно, я привёл пример в #27 с конечным циклом, нарочно взяв диапазон с избытком и включиd ECHO ON, чтобы показать, что полноценного принудительного выхода из цикла со счётчиком (FOR /L) по командам GOTO или EXIT /B не происходит: тело цикла перестаёт выполняться, но счётчик продолжает крутиться и лишь когда он достигнет предельного значения произойдёт выполнение команды, на которую передано управление GOTO, или выход по EXIT /B, чего в случае бесконечного цикла никогда не случится — поэтому он, на мой взгляд, и не представляет практического интереса.<br />По крайней мере так обстоит дело у меня — возможно в других версиях CMD.EXE эта проблема решена.</p>]]></content>
			<author>
				<name><![CDATA[wisgest]]></name>
				<uri>http://forum.script-coding.com/profile.php?id=3850</uri>
			</author>
			<updated>2012-09-30T10:37:48Z</updated>
			<id>http://forum.script-coding.com/viewtopic.php?pid=64397#p64397</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: CMD/BAT: перевёртыш (зеркальное обращение текста) или Строковые ф-ции]]></title>
			<link rel="alternate" href="http://forum.script-coding.com/viewtopic.php?pid=64395#p64395" />
			<content type="html"><![CDATA[<p>с конечным циклом все предельно ясно, интерес составляет бесконечный<br />конечный<br /></p><div class="codebox"><pre><code>@echo off
setlocal ENABLEDELAYEDEXPANSION
set x=а мама мыла раму
call :length %x%
for /l %%x in (1,1,%length%) do (
    set y=!y!!x:~-%%x,1!
)
echo.!y!
exit /b

:length
setlocal ENABLEDELAYEDEXPANSION
set out=%~0
set opt= %*
:rev
if not &quot;!opt:~%n%,1!&quot;==&quot;&quot; set /a n+=1 &amp; goto rev
endlocal &amp;&amp; set /a %out:~1%=%n%-1
exit /b</code></pre></div>]]></content>
			<author>
				<name><![CDATA[smaharbA]]></name>
				<uri>http://forum.script-coding.com/profile.php?id=2911</uri>
			</author>
			<updated>2012-09-30T10:13:17Z</updated>
			<id>http://forum.script-coding.com/viewtopic.php?pid=64395#p64395</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: CMD/BAT: перевёртыш (зеркальное обращение текста) или Строковые ф-ции]]></title>
			<link rel="alternate" href="http://forum.script-coding.com/viewtopic.php?pid=64394#p64394" />
			<content type="html"><![CDATA[<p>Да, отдельная — о проблеме принудительного выхода из цикла!<br />В случае вечного цикла командный интерпретатор зависает, так что этот пример не очень полезен.<br />Для лучшего понимания можно включить режим вывода команд на экран (ECHO ON) и ограничится конечным циклом:<br /></p><div class="codebox"><pre><code>echo ON
prompt cmd$g

setlocal ENABLEDELAYEDEXPANSION
set x=а мама мыла раму
for /l %%x in (0,1,25) do (
    echo Следующая буква: !x:~-1!
    set x=!x:~,-1!
    if not defined x exit /b
)</code></pre></div>]]></content>
			<author>
				<name><![CDATA[wisgest]]></name>
				<uri>http://forum.script-coding.com/profile.php?id=3850</uri>
			</author>
			<updated>2012-09-30T09:19:12Z</updated>
			<id>http://forum.script-coding.com/viewtopic.php?pid=64394#p64394</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: CMD/BAT: перевёртыш (зеркальное обращение текста) или Строковые ф-ции]]></title>
			<link rel="alternate" href="http://forum.script-coding.com/viewtopic.php?pid=64393#p64393" />
			<content type="html"><![CDATA[<p>отдельная тема говорите</p><div class="codebox"><pre><code>@echo off

setlocal ENABLEDELAYEDEXPANSION
set x=а мама мыла раму
for /l %%x in () do (
    &lt;nul set /p y=!x:~-1!
    set x=!x:~,-1!
    if not defined x exit /b
)</code></pre></div>]]></content>
			<author>
				<name><![CDATA[smaharbA]]></name>
				<uri>http://forum.script-coding.com/profile.php?id=2911</uri>
			</author>
			<updated>2012-09-30T08:46:16Z</updated>
			<id>http://forum.script-coding.com/viewtopic.php?pid=64393#p64393</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: CMD/BAT: перевёртыш (зеркальное обращение текста) или Строковые ф-ции]]></title>
			<link rel="alternate" href="http://forum.script-coding.com/viewtopic.php?pid=64391#p64391" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>smaharbA пишет:</cite><blockquote><p>объяснили таковое</p></blockquote></div><div class="quotebox"><cite>wisgest пишет:</cite><blockquote><p>Только связи с этой темой всё равно не замечаю</p></blockquote></div><p>Согласен. </p><p><strong>smaharbA</strong>, создайте отдельную тему, где можно было бы поговорить по поводу магии в Вашем примере. Я запустил тот код, но ничего интересного не произошло. Завершить скрипт пришлось не просто нажатием CTRL+C, но еще и подтвердить свой отказ клавишей - &quot;Y&quot;, что мне не нравится - ну сказал я CTRL+C, значит все - баста.</p>]]></content>
			<author>
				<name><![CDATA[Rumata]]></name>
				<uri>http://forum.script-coding.com/profile.php?id=24846</uri>
			</author>
			<updated>2012-09-30T08:27:42Z</updated>
			<id>http://forum.script-coding.com/viewtopic.php?pid=64391#p64391</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: CMD/BAT: перевёртыш (зеркальное обращение текста) или Строковые ф-ции]]></title>
			<link rel="alternate" href="http://forum.script-coding.com/viewtopic.php?pid=64390#p64390" />
			<content type="html"><![CDATA[<p>Хотя я не прав, действительно, есть что обсуждать!!<br />Только связи с этой темой всё равно не замечаю.</p>]]></content>
			<author>
				<name><![CDATA[wisgest]]></name>
				<uri>http://forum.script-coding.com/profile.php?id=3850</uri>
			</author>
			<updated>2012-09-30T08:13:21Z</updated>
			<id>http://forum.script-coding.com/viewtopic.php?pid=64390#p64390</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: CMD/BAT: перевёртыш (зеркальное обращение текста) или Строковые ф-ции]]></title>
			<link rel="alternate" href="http://forum.script-coding.com/viewtopic.php?pid=64389#p64389" />
			<content type="html"><![CDATA[<p>а Вы выполнили код ?</p>]]></content>
			<author>
				<name><![CDATA[smaharbA]]></name>
				<uri>http://forum.script-coding.com/profile.php?id=2911</uri>
			</author>
			<updated>2012-09-30T08:10:49Z</updated>
			<id>http://forum.script-coding.com/viewtopic.php?pid=64389#p64389</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: CMD/BAT: перевёртыш (зеркальное обращение текста) или Строковые ф-ции]]></title>
			<link rel="alternate" href="http://forum.script-coding.com/viewtopic.php?pid=64388#p64388" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>smaharbA пишет:</cite><blockquote><p>вы бы лучче объяснили таковое</p></blockquote></div><p>Как это относится к теме?<br />В первом цикле, по-моему, нечего объяснять,<br />во-втором заинтересовала запись диапазона для вечного цикла </p><div class="codebox"><pre><code>for /l %%x in () do (</code></pre></div><p>не не более того.</p>]]></content>
			<author>
				<name><![CDATA[wisgest]]></name>
				<uri>http://forum.script-coding.com/profile.php?id=3850</uri>
			</author>
			<updated>2012-09-30T08:08:12Z</updated>
			<id>http://forum.script-coding.com/viewtopic.php?pid=64388#p64388</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: CMD/BAT: перевёртыш (зеркальное обращение текста) или Строковые ф-ции]]></title>
			<link rel="alternate" href="http://forum.script-coding.com/viewtopic.php?pid=64386#p64386" />
			<content type="html"><![CDATA[<p>вы бы лучче объяснили таковое</p><div class="codebox"><pre><code>for /l %%x in (0,1,50) do (
    echo %%x
    if %%x gtr 20 goto m1
)
:m1
setlocal enabledelayedexpansion
set /a n=0
for /l %%x in () do (
    echo !n!
    set /a n+=1
    if !n! gtr 20 goto m2
rem для пущей зпущенности вместо гото можете попробовать exit /b
)
:m2</code></pre></div>]]></content>
			<author>
				<name><![CDATA[smaharbA]]></name>
				<uri>http://forum.script-coding.com/profile.php?id=2911</uri>
			</author>
			<updated>2012-09-30T07:43:05Z</updated>
			<id>http://forum.script-coding.com/viewtopic.php?pid=64386#p64386</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: CMD/BAT: перевёртыш (зеркальное обращение текста) или Строковые ф-ции]]></title>
			<link rel="alternate" href="http://forum.script-coding.com/viewtopic.php?pid=64383#p64383" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>smaharbA пишет:</cite><blockquote><p>ничего не понял</p></blockquote></div><p>В #17? — Это изощрения JUST FOR LULZ на тему рекурсии:<br />см. #3—#6—#7—#8—#10—#14—#15—#16—#17.</p><p>Спасибо за пример кода дополнительно подтверждающий несостоятельность для Коллекции обсуждаемой темы в её нынешних постановке вопроса и исполнении.</p>]]></content>
			<author>
				<name><![CDATA[wisgest]]></name>
				<uri>http://forum.script-coding.com/profile.php?id=3850</uri>
			</author>
			<updated>2012-09-30T06:50:43Z</updated>
			<id>http://forum.script-coding.com/viewtopic.php?pid=64383#p64383</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: CMD/BAT: перевёртыш (зеркальное обращение текста) или Строковые ф-ции]]></title>
			<link rel="alternate" href="http://forum.script-coding.com/viewtopic.php?pid=64376#p64376" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>wisgest пишет:</cite><blockquote><p>Ссылка на мнение авторитета — лишь средство сокращения рассуждений, но не окончательная истина.</p></blockquote></div><p>Дадада, именно, тут вы совершенно правы. Ведь как однажды заметил выдающийся египтолог Джеральд Месси:<br /><em><span style="color: gray">Им будет непросто, тем кто полагается на истину авторитета, вместо того, чтобы полагаться на авторитет истины.</span></em><br /></p><div class="quotebox"><cite>wisgest пишет:</cite><blockquote><p>Я прибег к ней, чтобы не отклоняться от темы, ты — чтобы уйти от ответа.</p></blockquote></div><p>Ненене, только для того чтобы показать некоторую несостоятельность Тваших утверждений. <img src="//forum.script-coding.com/img/smilies/big_smile.png" width="15" height="15" /><br />__</p><div class="quotebox"><cite>wisgest пишет:</cite><blockquote><div class="quotebox"><cite>Аскет пишет:</cite><blockquote><p>Да, обрабатывает одностроченый файлы.</p></blockquote></div><p>Так зачем трёхстрочный пример (и нужен ли он вообще)? — Однозначно небрежность.</p></blockquote></div><p>На самом деле это одна длинная строка, просто я ее разбил (а точнее просто скопировал вывод из интерпретатора).</p>]]></content>
			<author>
				<name><![CDATA[Аскет]]></name>
				<uri>http://forum.script-coding.com/profile.php?id=25748</uri>
			</author>
			<updated>2012-09-29T19:55:37Z</updated>
			<id>http://forum.script-coding.com/viewtopic.php?pid=64376#p64376</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: CMD/BAT: перевёртыш (зеркальное обращение текста) или Строковые ф-ции]]></title>
			<link rel="alternate" href="http://forum.script-coding.com/viewtopic.php?pid=64358#p64358" />
			<content type="html"><![CDATA[<p>ничего не понял</p><div class="codebox"><pre><code>@echo off

set x=а мама мыла раму
:rev
set y=%y%%x:~-1%
set x=%x:~,-1%
if defined x goto rev
echo %y%</code></pre></div>]]></content>
			<author>
				<name><![CDATA[smaharbA]]></name>
				<uri>http://forum.script-coding.com/profile.php?id=2911</uri>
			</author>
			<updated>2012-09-29T10:22:06Z</updated>
			<id>http://forum.script-coding.com/viewtopic.php?pid=64358#p64358</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: CMD/BAT: перевёртыш (зеркальное обращение текста) или Строковые ф-ции]]></title>
			<link rel="alternate" href="http://forum.script-coding.com/viewtopic.php?pid=64322#p64322" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>alexii пишет:</cite><blockquote><p><strong>wisgest</strong>, как будет выглядеть код?</p></blockquote></div><div class="codebox"><pre><code>@echo off
setlocal enableextensions enabledelayedexpansion

call :Reverse &quot;Мама мыла раму&quot;
echo [%Reverse%]

call :Reverse &quot;Мама мыла раму?&quot;
echo [%Reverse%]

endlocal
exit /b 0

:Reverse
    setlocal enableextensions enabledelayedexpansion
    set sOutName=%~0
    
    set sValue=%~1
    
    if defined sValue if not &quot;!sValue:~0,1!&quot;==&quot;!sValue!&quot; (
        call :Reverse &quot;%sValue:~1,-1%&quot;
        set sValue=%sValue:~-1%!Reverse!%sValue:~0,1%
    )
    
    endlocal &amp; set %sOutName:~1%=%sValue%
    exit /b</code></pre></div>]]></content>
			<author>
				<name><![CDATA[wisgest]]></name>
				<uri>http://forum.script-coding.com/profile.php?id=3850</uri>
			</author>
			<updated>2012-09-28T14:24:12Z</updated>
			<id>http://forum.script-coding.com/viewtopic.php?pid=64322#p64322</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: CMD/BAT: перевёртыш (зеркальное обращение текста) или Строковые ф-ции]]></title>
			<link rel="alternate" href="http://forum.script-coding.com/viewtopic.php?pid=64311#p64311" />
			<content type="html"><![CDATA[<p><strong>wisgest</strong>, как будет выглядеть код?</p>]]></content>
			<author>
				<name><![CDATA[alexii]]></name>
				<uri>http://forum.script-coding.com/profile.php?id=1844</uri>
			</author>
			<updated>2012-09-28T12:57:38Z</updated>
			<id>http://forum.script-coding.com/viewtopic.php?pid=64311#p64311</id>
		</entry>
</feed>
