Взять строку из списка по критерию

Keyrex

Новичок
Регистрация
02.07.2016
Сообщения
16
Благодарностей
1
Баллы
3
Столкнулся с неразрешимой собственными силами задачей:
есть переменная#1 с некой информацией (допустим login), а есть список, в котором лежит эта переменная с другим текстом (пример login:password:country).
каким образом можно взять строку из списка с наличием информации в переменной#1 (в нашем случае login) и положить в переменную#2?
 

Radzhab

Client
Регистрация
23.05.2014
Сообщения
1 500
Благодарностей
1 268
Баллы
113
C#:
var lst = project.Lists["Список"];
var val1 = project.Variable["Переменная1"];
var val2 = project.Variable["Переменная2"];
val2 = lst.Where(x=>x==val1).First();
return val2;
 
  • Спасибо
Реакции: Keyrex

arhip1985

Client
Регистрация
31.10.2011
Сообщения
2 994
Благодарностей
787
Баллы
113
вариант на с# может и проще, но всем понятен, можно сделать средствами зенно - берёшь строку с логином, кладёшь в переменную 1, потом берёшь строку из второго списка где лог:пасс:страна загоняешь всё в переменные 2, 3, 4 соответственно , сравниваешь переменную 1 с переменной 2, если равны то выходишь, все переменные уже есть, используешь их, если нет, берёшь по циклу следующую строку из списка где лог:пасс:страна , если по твоему логину (переменная 1) ничего не нашлось, то зацикливай на взятие следующей строки и всё по кругу.
 
  • Спасибо
Реакции: Keyrex

Keyrex

Новичок
Регистрация
02.07.2016
Сообщения
16
Благодарностей
1
Баллы
3
вариант на с# может и проще, но всем понятен, можно сделать средствами зенно - берёшь строку с логином, кладёшь в переменную 1, потом берёшь строку из второго списка где лог:пасс:страна загоняешь всё в переменные 2, 3, 4 соответственно , сравниваешь переменную 1 с переменной 2, если равны то выходишь, все переменные уже есть, используешь их, если нет, берёшь по циклу следующую строку из списка где лог:пасс:страна , если по твоему логину (переменная 1) ничего не нашлось, то зацикливай на взятие следующей строки и всё по кругу.
это способ применим если список не большой. а если список на 10-30к будет мне мою машину жалко просто :bw:
 

arhip1985

Client
Регистрация
31.10.2011
Сообщения
2 994
Благодарностей
787
Баллы
113
это способ применим если список не большой. а если список на 10-30к будет мне мою машину жалко просто :bw:
та вроде как в ЗП, а не в ПМ секунду оно занимает. Тестил?
 

Keyrex

Новичок
Регистрация
02.07.2016
Сообщения
16
Благодарностей
1
Баллы
3

Keyrex

Новичок
Регистрация
02.07.2016
Сообщения
16
Благодарностей
1
Баллы
3

Sergodjan

Administrator
Команда форума
Регистрация
05.09.2012
Сообщения
20 407
Благодарностей
9 116
Баллы
113
Столкнулся с неразрешимой собственными силами задачей:
есть переменная#1 с некой информацией (допустим login), а есть список, в котором лежит эта переменная с другим текстом (пример login:password:country).
каким образом можно взять строку из списка с наличием информации в переменной#1 (в нашем случае login) и положить в переменную#2?
http://zennolab.com/discussion/threads/kak-poluchit-stroku.30757/
 

Keyrex

Новичок
Регистрация
02.07.2016
Сообщения
16
Благодарностей
1
Баллы
3

Sergodjan

Administrator
Команда форума
Регистрация
05.09.2012
Сообщения
20 407
Благодарностей
9 116
Баллы
113
к сожалению этим способом, в моем случае, берется не вся строка, а только текст с которого начинается переменная
а моя переменная стоит не в начале текста
все получится, возьмется вся строка, только регулярку чуть изменить..

upload_2016-9-19_17-35-22.png
 
  • Спасибо
Реакции: Keyrex

Keyrex

Новичок
Регистрация
02.07.2016
Сообщения
16
Благодарностей
1
Баллы
3

amyboose

Client
Регистрация
21.04.2016
Сообщения
2 312
Благодарностей
1 191
Баллы
113
это способ применим если список не большой. а если список на 10-30к будет мне мою машину жалко просто :bw:
Что такое 10-30 к строк? Вот если бы речь шла о 10-30 млн строк, я бы пожелал удачи твоему компу и все равно не так много.
 

S16er1um

Client
Регистрация
14.04.2016
Сообщения
826
Благодарностей
240
Баллы
43
на 10-30 к строк всё быстро получится. Оно в проджекте медленно отрабатывает, для того чтоб ты видел результаты. В зенке всё будет за секуны
 

Кто просматривает тему: (Всего: 1, Пользователи: 0, Гости: 1)