Правила использования действий и переменных

Документация по программе, ее функциям, ответы на часто возникающие вопросы.
ivan424
Пассажир
Сообщения: 12
Зарегистрирован: Пн янв 02, 2012 4:24 am
Откуда: Россия
Благодарил (а): 0
Поблагодарили: 1 раз
Контактная информация:

Re: Правила использования действий и переменных

Сообщение ivan424 » Вт ноя 24, 2015 12:50 pm

Добрый день.
Подскажите, как вернуть значение переменной, имя которой не прописано а вычислено в результате предыдущего действия?
Например, я считал из нескольких файлов тексты и установил их в значения переменных для обработки.
1.txt, 2.txt, 3.txt...
В результате вычисления, например математической операции или другого, я получил название переменной в содержимом которой нужно произвести поиск, например [MathOperation2.Result] значение которого (2)
Устанавливаю переменную, например tmp1 в значение имени: [MathOperation2.Result].txt, получаю имя переменной 2.txt, содержимое которой теперь нужно вернуть, в другую переменную или в поле в котором будет производиться поиск.
Но тут проблема, туда возвращается только имя, но ни как не содержимое переменной с именем 2.txt.
Допустим, я хочу искать слово (test), если я пропишу в это поле:
http://www.arsvest.ru/photo/img/2015/im ... 498746.jpg
Имя переменной [2.txt], то поиск пройдет по значению переменной, как и положено.
Но сразу я прописать не могу, так как это значение результат вычисления и заранее не известно, это может быть и 1.txt, и 3.txt...
При прописывании как на представленном выше скрине, поиск пройдет не правильно, не по содержимому переменной, а по самому ее имени.
И никак не получается извлечь из вычисленного имени переменной ее значение, ни в это поле ни в еще одну переменную.

Аватара пользователя
adept
Ас
Сообщения: 177
Зарегистрирован: Ср июн 05, 2013 8:57 pm
Благодарил (а): 16 раз
Поблагодарили: 12 раз
Контактная информация:

Re: Правила использования действий и переменных

Сообщение adept » Ср ноя 25, 2015 7:44 pm

интересная задача. поэкспериментирую в ближайшее время и дам ответ. пока некогда
Помогаю в автоматизации процессов на компьютере с помощью xStarter с 2012 года
Нужна подсказка, готовое решение или обучение? Поделись подробностями, напиши мне!
ВКонтакте: vk.com/s0f0s | Телеграм: s0ff0s

Simple
Ас
Сообщения: 117
Зарегистрирован: Пн янв 25, 2010 10:29 am
Благодарил (а): 3 раза
Поблагодарили: 11 раз

Re: Правила использования действий и переменных

Сообщение Simple » Чт ноя 26, 2015 1:41 pm

Сделать две переменных.
В первой - новое значение, во второй - старое.

Аватара пользователя
adept
Ас
Сообщения: 177
Зарегистрирован: Ср июн 05, 2013 8:57 pm
Благодарил (а): 16 раз
Поблагодарили: 12 раз
Контактная информация:

Re: Правила использования действий и переменных

Сообщение adept » Вс май 22, 2016 3:56 am

это лишь обходной путь, причем для частного случая. вопрос об использовании значения переменной вида (в имени которой используется значение иной переменной), остается открытым, поскольку в циклах с большим числом итераций этому решению нет эквивалентно простой альтернативы. никакие ухищрения (типа увеличения глубины вложенности переменных или использования неэкранируемых особых скобок в виде программных констант) не позволяют извлечь значение результирующей переменной, поскольку xStarter игнорирует внешние квадратные либо фигурные скобки, внутри которых уже есть пара таких, в связи с чем и идет возврат лишь имени результирующей переменной, но не её значения. думаю, эту проблему не решить, минуя разработчика xStarter

вместо создания похожих переменных с изменяющимся по ходу цикла порядковым номером, однако, можно создать общую переменную или внешний текстовый файл, содержащий перечисление значений вышеуказанных переменных через нетипичный (отсутствующий в составе самих значений) разделитель (Enter, "&" или "="), вставив внутрь цикла действие создания переменной:

Код: Выделить всё

[общая_прмн] := [общая_прмн]новое_знч<Enter|&|=>
подбирать конкретное значение можно с помощью действия ТекстБлок, которое извлечет фрагмент из общей переменной, стоит лишь добавить в параметры номер искомой "строки" и тот самый разделитель
Помогаю в автоматизации процессов на компьютере с помощью xStarter с 2012 года
Нужна подсказка, готовое решение или обучение? Поделись подробностями, напиши мне!
ВКонтакте: vk.com/s0f0s | Телеграм: s0ff0s

Ответить