- Регистрация
- 11.12.2016
- Сообщения
- 203
- Благодарностей
- 23
- Баллы
- 18
Друзья, подскажите каким образом перебирать переменные.
У меня есть список в переменной вот такой
Я вот создал такой код на С#. но он очень долго обрабатывается, примерно 30-60 минут
так как в переменной около 80 000 строк.
Каким образом мне взять строки из переменной с значениями которые начинаются на "1;1;", и что бы это было быстрее?
У меня есть список в переменной вот такой
мне нужно найти все строки которые начинаються с вот этого "1;1;"42;140;854;8089.77;1;69.52;0.60;1
42;99;854;6373.36;1;99.24;0.60;1
42;139;854;14892.11;1;4.86;0.60;1
42;93;854;791842.32;1;0.02;0.60;1
56;161;854;7.8103;1;10288.65;0.60;1
56;162;854;1458.4831;1;58.38;0.60;1
56;140;854;2592.5775;1;69.52;0.60;1
1;1;854;1955.0325;1;99.24;0.60;1
56;139;854;5420.8779;1;4.86;0.60;1
6;2;374;1;1.02009384;8974.03;0.382;1
56;1;374;28;1;8663.77;0.382;1
42;2;374;1.02;1;8974.03;0.382;1
56;2;374;1;2.29;8974.03;0.382;1
3;1;104;1.02;1;132.07;0.94;1
43;1;104;1;33.95;132.07;0.94;1
2;1;104;79;1;132.07;0.94;1
96;1;104;1;7.05;132.07;0.94;1
1;1;104;1.24;1;87.24;0.94;1
1;1;104;13;1;0.61;0.94;1
Я вот создал такой код на С#. но он очень долго обрабатывается, примерно 30-60 минут
так как в переменной около 80 000 строк.
Код:
//Данные которые нужно искать в переменной
string a =project.Variables["one_id_valuti"].Value;
string b =project.Variables["two_id_valuti"].Value;
string c = a+b;
//Получаем количество строк в переменной
string text0 = project.Variables["bm_rates"].Value;
int k = text0.Split('\n').Count();
//проверяем каждую строку на нужное нам значение
for (int i = 0; i < k; i++){
string text = Macros.TextProcessing.Regex(text0, @".*?\n", ""+i+"")[0].FirstOrDefault();
string text1 =Macros.TextProcessing.Regex(text, @".*?;", "0")[0].FirstOrDefault();
string text2 = Macros.TextProcessing.Regex(text, @".*?;", "1")[0].FirstOrDefault();
//зависываем в строку только то что что совпадает
if (text1+text2==c){
project.Lists["Список 1"].AddRange(Macros.TextProcessing.Regex(text, @""+text1+".*").Select(g => g.FirstOrDefault()));
}
}