Обработка переменных

  • Автор темы Автор темы Lextor
  • Дата начала Дата начала

Lextor

Client
Регистрация
19.06.2020
Сообщения
174
Реакции
20
Баллы
18
Привет всем,
как взять текст из несколько переменных если он там есть и вставить в переменную XY с разделителем | ??

Eсть идея у кого?
 
Последнее редактирование:
Привет всем,
как взять текст из несколько переменных если он там есть и вставить в переменную XY с разделителем | ??

Eсть идея у кого?

Если правильно понял задачу, то так:

104777


104778


Либо тоже самое с помощью еще одного кубика:

104779
 
Если правильно понял задачу, то так:

Посмотреть вложение 104777

Посмотреть вложение 104778

Либо тоже самое с помощью еще одного кубика:

Посмотреть вложение 104779

да, вы меня правильно поняли, благодарю за решение. Но есть одно но:

Eсли в некоторых переменных отсутствует текст то получаю в "res" такой результат:
text1 | | | text5
или
| text2 | text3 |

а должно так:
text1 | text5
text2 | text3
 
Как вариант можно закинуть в список, удалить пустые строки и объединить через | , так же если нужно всего 2 строки, то считать кол-во строк и удалять ненужное по номерам используя счетчик.
104849
 
да, вы меня правильно поняли, благодарю за решение. Но есть одно но:

Eсли в некоторых переменных отсутствует текст то получаю в "res" такой результат:
text1 | | | text5
или
| text2 | text3 |

а должно так:
text1 | text5
text2 | text3


C#:
Развернуть Свернуть Копировать
if(project.Variables["text_1"].Value != String.Empty && project.Variables["text_2"].Value != String.Empty && project.Variables["text_3"].Value != String.Empty)
{
    project.Variables["result"].Value = $"{project.Variables["text_1"].Value}|{project.Variables["text_2"].Value}|{project.Variables["text_3"].Value}";
    return project.Variables["result"].Value;
}
throw new Exception("какая то из переменных text_1 или text_2 или text_3 пустая!");


или вот еще вариант

C#:
Развернуть Свернуть Копировать
if(project.Variables["text_1"].Value == String.Empty) throw new Exception("Переменная text_1 пустая!");
if(project.Variables["text_2"].Value == String.Empty) throw new Exception("Переменная text_2 пустая!");
if(project.Variables["text_3"].Value == String.Empty) throw new Exception("Переменная text_3 пустая!");
project.Variables["result"].Value = $"{project.Variables["text_1"].Value}|{project.Variables["text_2"].Value}|{project.Variables["text_3"].Value}";
return project.Variables["result"].Value;


3h1Es7D.png


2BxTpCS.png


2uyiVwM.png
 
Последнее редактирование:
Как вариант можно закинуть в список, удалить пустые строки и объединить через | , так же если нужно всего 2 строки, то считать кол-во строк и удалять ненужное по номерам используя счетчик.Посмотреть вложение 104849


Благодарю за ваш вариант/решение. Перед вашим вариантом мне нужно удалить строки не содержат текст.
Но после этого действия удаляются все строки а не только под номером 1.

105195
 
Благодарю за ваш вариант/решение. Перед вашим вариантом мне нужно удалить строки не содержат текст.
Но после этого действия удаляются все строки а не только под номером 1.

Посмотреть вложение 105195
Удалить строки содержащие только пробельные символы.
 
  • Оценить
Реакции: Lextor
Благодарю за ваш вариант/решение. Перед вашим вариантом мне нужно удалить строки не содержат текст.
Но после этого действия удаляются все строки а не только под номером 1.

Посмотреть вложение 105195

Через c# перебрать список с конца и удалить все строки, являющиеся пустыми. Позднее скину код, если не получится.
 
Благодарю за ваш вариант/решение. Перед вашим вариантом мне нужно удалить строки не содержат текст.
Но после этого действия удаляются все строки а не только под номером 1.

Посмотреть вложение 105195
Чуть выше уже написали как удалить. Оставлю скрин.
105198
 
  • Оценить
Реакции: Lextor
C#:
Развернуть Свернуть Копировать
if(project.Variables["text_1"].Value != String.Empty && project.Variables["text_2"].Value != String.Empty && project.Variables["text_3"].Value != String.Empty)
{
    project.Variables["result"].Value = $"{project.Variables["text_1"].Value}|{project.Variables["text_2"].Value}|{project.Variables["text_3"].Value}";
    return project.Variables["result"].Value;
}
throw new Exception("какая то из переменных text_1 или text_2 или text_3 пустая!");


или вот еще вариант

C#:
Развернуть Свернуть Копировать
if(project.Variables["text_1"].Value == String.Empty) throw new Exception("Переменная text_1 пустая!");
if(project.Variables["text_2"].Value == String.Empty) throw new Exception("Переменная text_2 пустая!");
if(project.Variables["text_3"].Value == String.Empty) throw new Exception("Переменная text_3 пустая!");
project.Variables["result"].Value = $"{project.Variables["text_1"].Value}|{project.Variables["text_2"].Value}|{project.Variables["text_3"].Value}";
return project.Variables["result"].Value;


3h1Es7D.png


2BxTpCS.png


2uyiVwM.png


Благодарю за ваш вариант/решение. Есть проблема. Пробел отсутствует и код работает только если все три переменные содержат текст.
 

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