Помогите кто знает c# нужно добавит объединить массивы

zava75

Client
Регистрация
01.12.2019
Сообщения
157
Благодарностей
4
Баллы
18
Добрый день . Кто понимает c# нужна помощь есть две переменные строки
например
// string str = "слово1 слово2 слово3 слово4 слово5 слово6";
// string strend = "слово7 слово8 слово9";

я беру часть слов с первой строки и перемешиваю

string str = project.Variables["STRING_START"].Value;
string strend = project.Variables["STRING_END"].Value;
string STR_RESULT = project.Variables["STR_RESULT"].Value;
string str_DLINA = project.Variables["STRING_DLINA"].Value;
int strD = int.Parse(str_DLINA);

string[] tmp = str.Split(' ').Shuffle().Take(strD).ToArray();

беру случайное слово из второй строки

string[] tmp1 = str.Split(' ').Shuffle().Take(1).ToArray();

в результате нужно в конец добавить к tmp + tmp1 чтобы получилось например слово1 слово3 слово6 слово8 , что бы добавлялось сгнетённый tmp в конец только одно случайное слово из strend?

return string.Join(" ", tmp);
 

djaga

Client
Регистрация
26.04.2020
Сообщения
505
Благодарностей
1 054
Баллы
93
Добрый день . Кто понимает c# нужна помощь есть две переменные строки
например
// string str = "слово1 слово2 слово3 слово4 слово5 слово6";
// string strend = "слово7 слово8 слово9";

я беру часть слов с первой строки и перемешиваю

string str = project.Variables["STRING_START"].Value;
string strend = project.Variables["STRING_END"].Value;
string STR_RESULT = project.Variables["STR_RESULT"].Value;
string str_DLINA = project.Variables["STRING_DLINA"].Value;
int strD = int.Parse(str_DLINA);

string[] tmp = str.Split(' ').Shuffle().Take(strD).ToArray();

беру случайное слово из второй строки

string[] tmp1 = str.Split(' ').Shuffle().Take(1).ToArray();

в результате нужно в конец добавить к tmp + tmp1 чтобы получилось например слово1 слово3 слово6 слово8 , что бы добавлялось сгнетённый tmp в конец только одно случайное слово из strend?

return string.Join(" ", tmp);
Привет.
Если я вас правильно понял, то вот:
Решение:
string str = "слово1 слово2 слово3 слово4 слово5 слово6";
string strend = "слово7 слово8 слово9";

//string str = project.Variables["STRING_START"].Value;
//string strend = project.Variables["STRING_END"].Value;
//string STR_RESULT = project.Variables["STR_RESULT"].Value;
//string str_DLINA = project.Variables["STRING_DLINA"].Value;
//int strD = int.Parse(str_DLINA);

var tmp = str.Split(' ').Shuffle().ToList();
var tmp1 = strend.Split(' ').Shuffle().First();
var ans = new List<string>();
ans.AddRange(tmp);
ans.Add(tmp1);

return string.Join(" ", ans);
Результат: слово3 слово2 слово4 слово5 слово1 слово6 слово8

upd: Исправил опечатку.
 
Последнее редактирование:

zava75

Client
Регистрация
01.12.2019
Сообщения
157
Благодарностей
4
Баллы
18
Привет.
Если я вас правильно понял, то вот:
Решение:
string str = "слово1 слово2 слово3 слово4 слово5 слово6";
string strend = "слово7 слово8 слово9";

//string str = project.Variables["STRING_START"].Value;
//string strend = project.Variables["STRING_END"].Value;
//string STR_RESULT = project.Variables["STR_RESULT"].Value;
//string str_DLINA = project.Variables["STRING_DLINA"].Value;
//int strD = int.Parse(str_DLINA);

var tmp = str.Split(' ').Shuffle().ToList();
var tmp1 = strend.Split(' ').Shuffle().First();
var ans = new List<string>();
ans.AddRange(tmp);
ans.Add(tmp1);

return string.Join(" ", ans);
Результат: слово3 слово2 слово4 слово5 слово1 слово6 слово8

upd: Исправил опечатку.
C#:
 string str = project.Variables["STRING_START"].Value;
 string strend = project.Variables["STRING_END"].Value;
 string STR_RESULT = project.Variables["STR_RESULT"].Value;
 string str_DLINA = project.Variables["STRING_DLINA"].Value;
 int strD = int.Parse(str_DLINA);

// string str = "слово1 слово2 слово3 слово4 слово5 слово6";
string[] tmp = str.Split(' ').Shuffle().Take(strD).ToArray();
string[] tmp1  = strend.Split(' ').Shuffle().Take(1).ToArray();
 
str = string.Join(" ", tmp);
strend = string.Join(" ", tmp1);
project.SendInfoToLog( str , true);
project.SendInfoToLog( strend , true);

string result = str + " " + strend;
return result;
 

zava75

Client
Регистрация
01.12.2019
Сообщения
157
Благодарностей
4
Баллы
18
ТАК работает, правда кто знает c# руки бы оторвал ) . нужно будет поизучать c# мне))
 

Alexmd

Client
Регистрация
10.12.2018
Сообщения
1 021
Благодарностей
1 387
Баллы
113
ТАК работает, правда кто знает c# руки бы оторвал ) . нужно будет поизучать c# мне))
Да ничего. Главное, что работает. Тут сильно и не оптимизируешь - дело вкуса.
C#:
string str = "слово1 слово2 слово3 слово4 слово5 слово6";
string strend = "слово7 слово8 слово9";
string d = "3";
return string.Join(" ", str.Split(' ').Shuffle().Take(int.Parse(d)).Append(strend.Split(' ').Shuffle().First()));
 
  • Спасибо
Реакции: zava75 и djaga

zava75

Client
Регистрация
01.12.2019
Сообщения
157
Благодарностей
4
Баллы
18
спасибо всем за помощь!!!!!!!!!!!!!!!!!
 
  • Спасибо
Реакции: Alexmd

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