• Как соотнести имена файлов с одинаковыми датами?

    @lvv85
    static void Main(string[] args)
            {
                string[] arrDate = { "09.08.2018  13:04:07"
                                    , "11.05.2018  11:03:00"
                                    , "16.07.2018  13:28:12" };
    
                string[] arrFileName = { "nameFile_1301_1602__2018_08_09__13_04_07_990"
                                        , "nameFile_1302_1602__2018_05_11__11_03_40_910"
                                        , "nameFile_1302_1602__2018_07_16__13_28_12_950" };
    
                foreach (var strDate in arrDate)
                {
                    var pattern = GetSearchPattern(strDate);
                    if (pattern!=null)
                    {
                        var fileName = arrFileName.FirstOrDefault(f=>f.Contains(pattern));
    
                        if (fileName == null) continue;
    
                        string otvet = "Дата: " + strDate + "Файл с этой датой: " + fileName;
    
                        Console.WriteLine(otvet);
                    }
                }
            }
    
            static string GetSearchPattern(string strDate)
            {
                DateTime date = new DateTime();
    
                if (!DateTime.TryParse(strDate, out date)) return null;
    
                return date.ToString("__yyyy_MM_dd__HH_mm_ss_");
            }
    Ответ написан
    Комментировать
  • Работа с массивами (list) и символами?

    @OwDafuq
    List<string> text = ["89192864554","+7926?874?22?44", "vk@yandex.ru" , "vk.com", "youtube"];
    List<string> phones = new List<string>(text.Where(x => x.StartWith("+") || x.StartWith("8")));
    List<string> sites = new List<string>(text.Where(x => x.Contains(".") && !x.Contains("@")));
    List<string> email = new List<string>(text.Where(x => x.Contins("@")));

    Как вариант
    Ответ написан
    7 комментариев
  • Как спарсить весь html код - C#?

    Gorily
    @Gorily
    Метод 1. Качественно, но сложно.
    Подгрузка контента происходит обычно GET-запросами с параметрами, где указаны параметры сколько статей с начала пропустить и по сколько получать. В ответе обычно прилетает готовый HTML код, который просто встраивается в страницу и его спокойно можно распарсить.
    Вектор для изучения:
    • WebClient, HttpClient и т.п. - для формирования запросов
    • Консоль разработчика браузера (Shift+Ctrl+i, вкладка Network) и Fiddler - для изучения поведения страницы и вылавливания содержимого запроса
    Метод 2. Быстро и без заморочек.
    Взять Selenium + Chrome (для наглядности), открывать в них страницу и эмулировать стандартными средствами либо нажатие кнопки (например, "Показать ещё"), либо нажатие пробела (пролистывает страницу вниз). Время от времени проверять используя XPath достигнуто ли дно.
    Вектор для изучения:
    • Selenium - статей полно
    • XPath - язык запросов к XML подобной разметке


    Оба пути очень доступные в изучении.
    Ответ написан
    Комментировать