Угрюмые лямбды

TwistDanceR

Client
Регистрация
30.05.2019
Сообщения
481
Реакции
201
Баллы
43
C#:
Развернуть Свернуть Копировать
var list = project.Lists["pro"]; //объява
list.Clear(); //чистка
var file = File.ReadAllText(project.Directory+@"\\"+"ips-zone2.txt"); //файл для переработки
var regex = @"zproxy.*"; // регулярка для переработки
list.AddRange(Regex.Matches(file,regex).Cast<Match>().Select(m=>m.Value).).; //- выдает мне офигительно красивый список строк формата "a:b:c:d"
//list.ToList().ForEach(m=>m.Replace("A:B:",""));

Теперь я хочу каждый элемент списка обработать, чтобы стало "c:d:a:b"

Пытаюсь использовать лямбда выражения (это самая старая статья из тех, с которыми я уже пару недель не могу разобраться) по логике:
1) для каждого элемента коллекции применить Regex Замена "a:b:" на "";
2) прикрепить к каждому элементу хвост ":a:b" (удалить крайнее правое двоеточие, тоже регуляркой....)

Подскажите пожалуйста, как это сделать. Слишком много времени уже убил. Я бы через экшны уже давно справился, но хочу знать как это бахнуть на C#.
Спасибо, жду ответы.

P.S.
Читаю изо дня в день, пробую, кусаю - не раскалывается.
 
Так надо с основ начинать, Шилдт, Троелсен, а так перешагивать сразу в лямбды - это слишком.

Может ты и прав, но если я юзаю одну часть кода с лямбдой (хотя бы на 50% понимая логику) - мне хотелось бы увидеть и вторую в действии, работающую.

За литературу отдельное спасибо.
 
Либо меня правда игнорят во всех темах, либо вопрос был слишком прост, чтобы на него отвечать. Решение сам довел (чё ж вчера не сделал-то?)... лямбды под C# тут не нужны, и так работает моментально. Может кому понадобится...
Значения, которые были записаны в лист могут быть заменены простым циклом с присвоением переменной нового значения. (Спасибо КЭП).
Вот решение для такой задачи. Выполняется в секунду.

C#:
Развернуть Свернуть Копировать
for(int i=0; i<list.Count; i++) //Модификация каждого стринга тупым циклом
{
    list[i] = list[i].Replace("a:b:",""); //убираем a:b: из начала
    list[i] = list[i]+"@a:b"; //добавляем в конец строки текст"@:a:b"
}

P.S. Когда дочитаю книжки - тогда вернусь к лямбдам. Сложновато с уровня 10 часов в неделю понимать до конца где объекты, что есть методы и функции, как к ним обращаться, чтобы они правильно компилировались... Но знания уровня колледжа мне помогают :D
 
  • Спасибо
Реакции: kagorec

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