Обработка текста регулярным выражением

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

GrandT

Client
Регистрация
23.07.2014
Сообщения
160
Реакции
64
Баллы
28
Есть список такого вида:
Код:
Развернуть Свернуть Копировать
mail/sdfdsfka
list/dsdfsdaso
bk/midfdfniya
inbox/edf12dne
mail/aammax1
inbox/mifghn2001
mail/anttyutka
mail/merervi

Как его превратить в список вида

Код:
Развернуть Свернуть Копировать
sdfdsfka@mail.ru
dsdfsdaso@list.ru
...

и так далее.

Пробовал создать цикл с обработкой каждой строки отдельно, но это нереально долго даже для небольших списков.
 
Попробуйте кодом C#:
Код:
Развернуть Свернуть Копировать
List<string> all = new List<string>(project.Lists["Список с текстом"]);
char sep = '/';
            string[] parts;
            for (int i = 0; i < all.Count; i++)
            {
                parts = all[i].Split(sep);
                try
                {
                    project.Lists["Список, куда положить результат"].Add(parts[1] + "@" + parts[0] + ".ru");
                }
                catch (Exception) {}
            }
 
  • Оценить
Реакции: GrandT
Попробуйте кодом C#:
Код:
Развернуть Свернуть Копировать
List<string> all = new List<string>(project.Lists["Список с текстом"]);
char sep = '/';
            string[] parts;
            for (int i = 0; i < all.Count; i++)
            {
                parts = all[i].Split(sep);
                try
                {
                    project.Lists["Список, куда положить результат"].Add(parts[1] + "@" + parts[0] + ".ru");
                }
                catch (Exception) {}
            }

Супер! Все заработало! Благодарю!
 
Попробуйте кодом C#:
Код:
Развернуть Свернуть Копировать
List<string> all = new List<string>(project.Lists["Список с текстом"]);
char sep = '/';
            string[] parts;
            for (int i = 0; i < all.Count; i++)
            {
                parts = all[i].Split(sep);
                try
                {
                    project.Lists["Список, куда положить результат"].Add(parts[1] + "@" + parts[0] + ".ru");
                }
                catch (Exception) {}
            }


И еще вопрос такой. Как сделать сравнение двух списков по строкам в C#? Допустим, в Списке 1 перечислены е-майлы которые нужно удалить из Списка 2 (если они там есть).
И скиньте WMR, отблагодарю малость за потраченное время)
 
И еще, если можно, напишите код C#, как удалить дублирующие строки из любого списка
 
И еще, если можно, напишите код C#, как удалить дублирующие строки из любого списка
С дубликатами разобрался, нашел функцию удаления дубликатов в операциях со списком.
 
563f17c79b1d66b423f0d97088dab9c6.png
 
Я тоже раньше страдал что пытался сделать абсолютно все постером, даже когда не знал как. В итоге тратишь время больше на вещи. которые потом и не пригодятся)
 
В этом есть сакральный смысл наработки опыта)))) для того чтобы хорошенечко забить гвоздь микроскопом обычно приходится порядком попотеть для осознания конструкции микроскопа и выбора оптимального места для захвата))))))
Так что даже если и нафик потом не нужно - ценный опыт уже не пропьешь)
 
Да это понятно. Я уже писал выше, что это очень долго. Представьте список в 50000 емайлов)) Я лично больше 50 "кругов" зеннопостера по циклу не выдерживаю. Не знаю, может в Project Maker'е все немного медленнее, чем в ZP, но не думаю что разница большая.
 
Да это понятно. Я уже писал выше, что это очень долго. Представьте список в 50000 емайлов)) Я лично больше 50 "кругов" зеннопостера по циклу не выдерживаю. Не знаю, может в Project Maker'е все немного медленнее, чем в ZP, но не думаю что разница большая.
Да, не учел. Сам сейчас сам столкнулся с проблемой скачать базу на 300к записей. В однопоточном режиме скачал 2000 записей за 2 дня. Мне всего год нужен и база моя!)
 
это из чего вы такую базу качаете?
ну т.е. это база или парсите кучу страничек?
 
Ахахах))) так то да))))) ну))) тогда или за стандартом, или в кодеры))
 
Ахахах))) так то да))))) ну))) тогда или за стандартом, или в кодеры))
Скорее тогда за прошкой. Ведь стандарт просто уменьшит этот срок. Всеравно 2 месяца будет)). Тут только в прошке выход.
 
Подумайте над оптимизацией, если контент есть в коде страницы, а не подгружается сриптами - можно на гет-запросах сделать очень шустрый парсер
 
Подумайте над оптимизацией, если контент есть в коде страницы, а не подгружается сриптами - можно на гет-запросах сделать очень шустрый парсер
У меня гет запросы работают с той же скоростью,что и открытие страницы). По крайней мере в 2 других проектах. Поэтому тут я так и реализовал. Страничка легкая, я не думаю,что гет сильно увеличит скорость. Ни скриптов ни картинок, ничего. Тот же гет запрос)
 
А вы инициализацию инстанса выключите, если можно на гет-запросах и тихонечко сползайте под стол от удовольствия.
 
А вы инициализацию инстанса выключите, если можно на гет-запросах и тихонечко сползайте под стол от удовольствия.
Не нашел. Как это сделать?
Да, гет запросами попробовал, можно. Но долго, жуть
 
А вы инициализацию инстанса выключите, если можно на гет-запросах и тихонечко сползайте под стол от удовольствия.
На данный момент сделал через гет запросы, но заметил такую особенность. Что работает в разы быстрее если в шаблоне сразу цикл вечный сделать, чем в зенно указывать кол-во раз для запуска.
Если указываю в зенно то он каждый запуск оч долго начинает. Секунды 2.
А в цикле внутри шаблона раз в 5 быстрее
 
ну это не удивительно, т.к. на инициализацию все равно уходит время
 

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