<?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=15507&amp;type=atom" />
	<updated>2020-07-05T16:47:52Z</updated>
	<generator>PunBB</generator>
	<id>https://forum.script-coding.com/viewtopic.php?id=15507</id>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Динамические переменные в статической строке]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=140588#p140588" />
			<content type="html"><![CDATA[<p>Решил проблему.</p><div class="codebox"><pre><code>text := &quot;Привет, меня зовут {}, мне {} лет&quot;
vars := [&quot;Ваня&quot;, &quot;17&quot;]
result := format(text, vars *)
msgbox % result ; Выводит &quot;Привет, меня зовут Ваня, мне 17 лет&quot;</code></pre></div><p>Тема закрыта.</p>]]></content>
			<author>
				<name><![CDATA[Lencore228]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=40862</uri>
			</author>
			<updated>2020-07-05T16:47:52Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=140588#p140588</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Динамические переменные в статической строке]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=140587#p140587" />
			<content type="html"><![CDATA[<p>Понятно. Тогда смотрите пример из второго сообщения. То, что взято в кавычки - &quot;статический контент&quot;. То, что без кавычек - воспринимается как переменная (в этом месте будет её содержимое). Используя такой разделитель (пробел точка пробел), можно чередовать разные &quot;контенты&quot;.</p>]]></content>
			<author>
				<name><![CDATA[ypppu]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=5974</uri>
			</author>
			<updated>2020-07-05T14:47:16Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=140587#p140587</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Динамические переменные в статической строке]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=140586#p140586" />
			<content type="html"><![CDATA[<p><strong>ypppu</strong></p><p>Я описал немного другую ситуацию: &quot;Ваше имя: {}, ваш возраст: {}&quot;.<br />Отличие в том, что переменная не в конце и не одна. То есть динамический контент непосредственно внутрь статического вставляется.</p>]]></content>
			<author>
				<name><![CDATA[Lencore228]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=40862</uri>
			</author>
			<updated>2020-07-05T14:36:51Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=140586#p140586</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Динамические переменные в статической строке]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=140585#p140585" />
			<content type="html"><![CDATA[<p>То есть заранее неизвестно не только имя, но и строка, в которую оно будет подставляться? Тогда так.<br /></p><div class="codebox"><pre><code>string555 := &quot;Hello, your name is &quot;
name := &quot;Vasya&quot;
string := string555 . name  
MsgBox, %string%
Return</code></pre></div>]]></content>
			<author>
				<name><![CDATA[ypppu]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=5974</uri>
			</author>
			<updated>2020-07-05T14:28:50Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=140585#p140585</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Динамические переменные в статической строке]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=140584#p140584" />
			<content type="html"><![CDATA[<p><strong>ypppu</strong></p><p>Проблема в том, что переменная (name) определяется в теле скрипта, а строка должна задаваться заранее (в начале). В теле скрипта обрабатывается сообщение юзера, потом достаётся строка нужного языка, из конфига вытаскивается имя (Vasya), вставляется в строку и отправляется юзеру.</p>]]></content>
			<author>
				<name><![CDATA[Lencore228]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=40862</uri>
			</author>
			<updated>2020-07-05T14:25:35Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=140584#p140584</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Динамические переменные в статической строке]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=140583#p140583" />
			<content type="html"><![CDATA[<p>Может так?<br /></p><div class="codebox"><pre><code>name := &quot;Vasya&quot;
string := &quot;Hello, your name is &quot; . name  
MsgBox, %string%
Return</code></pre></div>]]></content>
			<author>
				<name><![CDATA[ypppu]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=5974</uri>
			</author>
			<updated>2020-07-05T14:22:58Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=140583#p140583</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[AHK: Динамические переменные в статической строке]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=140582#p140582" />
			<content type="html"><![CDATA[<p>Привет. Я делаю ботов для telegram, все в принципе складно (кроме однопоточности), но вот тут возник вопрос с разными языками интерфейса. При запуске бота юзер выбирает язык, он записывается в конфиг и все. В самом боте в самом начале в переменных прописываются все строки на разных языках, например:</p><p>ruHello := &quot;Привет&quot;<br />enHello := &quot;Hello&quot;</p><p>Далее при обращении человека происходит считывание из конфига его языка в переменную lang и отправка ему строки вида %lang%Hello. Тут вопросов нет, все работает. Но проблема появилась, когда нужно было вставить сюда другие переменные, которые считывались непосредственно при обращении юзера. Мне нужно, чтобы я заранее в строке прописал ключевые символы (например, {}), а при формировании строки туда подставлялись нужные переменные.</p><p>Например, я пишу в начале:</p><p>ruData := &quot;Ваше имя: {}, ваш возраст: {}&quot;</p><p>А потом в событии обработки сообщения я бы считал нужные данные именно по этому юзеру (данные ведь разные всегда) и смог подставить их в эту строку соответственно. Если я в начале в строке пишу названия переменных, которые используются в процедуре обработки, это не срабатывает, т.к., по сути, строка определяется в начале с пустыми переменными. Принципиально, чтобы все строки были в начале кода для удобного редактирования.</p><p>P.S. я вроде видел такой синтаксис, но, к сожалению, не смог нигде найти его. Что-то вроде такого:</p><p>string := &quot;Hello, your name is {}&quot;, name&nbsp; &nbsp; &nbsp; &nbsp;; вместо {} подставляется переменная name</p><p>Помогите, пожалуйста, решить проблему.</p>]]></content>
			<author>
				<name><![CDATA[Lencore228]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=40862</uri>
			</author>
			<updated>2020-07-05T11:53:44Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=140582#p140582</id>
		</entry>
</feed>
