Разбить переменную на несколько переменных

fireplayer

Client
Регистрация
20.10.2015
Сообщения
36
Благодарностей
1
Баллы
8
Добрый вечер. делаю парсер поставщиков. Столкнулся с проблемой парсигна вкусов товара.
На выходе я имею переменную Taste=Яблоко Вишня Семечки
Между вкусами стоит пробел.
Как мне разбить теперь данную переменную на
  • taste1=Яблоко
  • taste2=Вишня
  • taste3=Семечки
?
 

ssXXXss

Client
Регистрация
23.12.2014
Сообщения
7 379
Благодарностей
2 041
Баллы
113
регекс или сплит и в три переменые
 
  • Спасибо
Реакции: name7778 и fireplayer

fireplayer

Client
Регистрация
20.10.2015
Сообщения
36
Благодарностей
1
Баллы
8

qzen4i

Client
Регистрация
01.05.2014
Сообщения
1 408
Благодарностей
314
Баллы
83
К примеру для яблоко можно такой (?<=Taste=).*?(?=\ ) , для вишни такой (?<=Яблоко\ ).*?(?=\ ) , для семечек такой (?<=Вишня\ ).* это только в том случае если по переменной всегда идёт как Выше написали.
 
  • Спасибо
Реакции: name7778 и fireplayer

fireplayer

Client
Регистрация
20.10.2015
Сообщения
36
Благодарностей
1
Баллы
8
К примеру для яблоко можно такой (?<=Taste=).*?(?=\ ) , для вишни такой (?<=Яблоко\ ).*?(?=\ ) , для семечек такой (?<=Вишня\ ).* это только в том случае если по переменной всегда идёт как Выше написали.
Переменные всегда меняются и в произвольном порядке, к сожалению
 

qzen4i

Client
Регистрация
01.05.2014
Сообщения
1 408
Благодарностей
314
Баллы
83
Переменные всегда меняются и в произвольном порядке, к сожалению
Ну тогда лучше всего спарсить, потом проверкой текста разделить. Может кто-то даст другое более понятнее решение. Но я бы сделал так, спарсил бы все, потом по проверке текста, разделил бы по названию
 

ssXXXss

Client
Регистрация
23.12.2014
Сообщения
7 379
Благодарностей
2 041
Баллы
113
Создаёшь три переменые с именем taste1 taste2 taste3
Экшен С# вставляешь туда этот код и пользуешься
Код:
string [] vkys = project.Variables["response"].Value.Split(' '); // твоя переменая где хрнится Яблоко Вишня Семечки
project.Variables["taste1"].Value = vkys[0].Trim();
project.Variables["taste2"].Value = vkys[1].Trim();
project.Variables["taste3"].Value = vkys[2].Trim();
 
  • Спасибо
Реакции: revand, CSS и qzen4i

qzen4i

Client
Регистрация
01.05.2014
Сообщения
1 408
Благодарностей
314
Баллы
83
Создаёшь три переменые с именем taste1 taste2 taste3
Экшен С# вставляешь туда этот код и пользуешься
Код:
string [] vkys = project.Variables["response"].Value.Split(' '); // твоя переменая где хрнится Яблоко Вишня Семечки
project.Variables["taste1"].Value = vkys[0].Trim();
project.Variables["taste2"].Value = vkys[1].Trim();
project.Variables["taste3"].Value = vkys[2].Trim();
Вместо пустоты возможно любое значение ставить? ТС сорри что в твою тему.
 

ssXXXss

Client
Регистрация
23.12.2014
Сообщения
7 379
Благодарностей
2 041
Баллы
113

VladZen

Administrator
Команда форума
Регистрация
05.11.2014
Сообщения
22 454
Благодарностей
5 913
Баллы
113
Добавить значение переменной в список. В списке выбрать разделитель - Пробел или {-String.Space-}, затем взять построчно все строки из списка.
 
  • Спасибо
Реакции: serg1208 и fireplayer

bizzon

Client
Регистрация
08.09.2015
Сообщения
1 103
Благодарностей
132
Баллы
63
Создаёшь три переменые с именем taste1 taste2 taste3
Экшен С# вставляешь туда этот код и пользуешься
Код:
string [] vkys = project.Variables["response"].Value.Split(' '); // твоя переменая где хрнится Яблоко Вишня Семечки
project.Variables["taste1"].Value = vkys[0].Trim();
project.Variables["taste2"].Value = vkys[1].Trim();
project.Variables["taste3"].Value = vkys[2].Trim();
Здорово, разнесла содержание по переменным.
А в поле "Положить результат в переменную" что вставлять?
И что здесь будет результатом?
 

rostonix

Известная личность
Регистрация
23.12.2011
Сообщения
29 067
Благодарностей
5 715
Баллы
113
Здорово, разнесла содержание по переменным.
А в поле "Положить результат в переменную" что вставлять?
И что здесь будет результатом?
переменную можно указать любую, например назовите Temp (временная).
Переменная там обязательно должна быть. Но ничего полезного в нее не попадет)
 

serg1208

Client
Регистрация
17.04.2018
Сообщения
331
Благодарностей
15
Баллы
18
Добавить значение переменной в список. В списке выбрать разделитель - Пробел или {-String.Space-}, затем взять построчно все строки из списка.
просто и здорово! спасибо!
 

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