Discovery Russia (Сокращенно) Понедельник, 22 Мая 09:00, 15:00, 01:00, 04:50 Беар Гриллс: Выжить любой ценой 12+ 10:00, 16:30, 22:30, 06:55 Как это устроено? 12+ 10:30, 16:00, 22:00, 06:30 Как это сделано? 12+ 11:00, 17:00, 00:00, 08:10 Охотники за реликвиями 12+ 11:30, 17:30, 00:30, 08:35 Охотники за складами 16+ 12:00, 13:00, 14:00 Выживание без купюр 16+ 18:00, 23:00, 07:20 Махинаторы 12+ 19:00, 02:00 Колесо: игра на выживание 16+ 20:00, 03:00 Голые и напуганные 16 + 21:00, 03:55 Аляска: семья из леса. Выживание в глуши 16+ 05:40, 06:05 Молниеносные катастрофы 16+ Вторник, 23 Мая 09:00, 15:00, 01:00, 04:50 Беар Гриллс: Выжить любой ценой 12+ 10:00, 16:30, 22:30, 06:55 Как это устроено? 12+ 10:30, 16:00, 22:00, 06:30 Как это сделано? 12+ 11:00, 17:00, 00:00, 08:10 Охотники за реликвиями 12+ 11:30, 17:30, 00:30, 08:35 Охотники за складами 16+ 12:00, 13:00, 14:00 Коллекционеры авто 12+ 18:00, 23:00, 07:20 Махинаторы 12+ 19:00, 03:00 Гений автодизайна 12+ 20:00, 02:00 Уникальные тачки с Уиллом Кастро 12+ 21:00, 03:55 Уличные гонки 16+ 05:40, 06:05 Молниеносные катастрофы 16+ ... Как средствами php привести к такому виду? Первая мысль "регулярные выражения", но и здесь не все так просто... Речь идет о помещении каждого времени с новой строки и добавлении к нему соответствующей тв-программы. Кроме того, если следом друг за другом идут одинаковые программы, оставить только первую строку. Discovery Russia (Сокращенно) Понедельник 09:00 Беар Гриллс: Выжить любой ценой 10:00 Как это устроено? 10:30 Как это сделано? 11:00 Охотники за реликвиями 11:30 Охотники за складами 12:00 Выживание без купюр 15:00 Беар Гриллс: Выжить любой ценой 16:00 Как это сделано? 16:30 Как это устроено? 17:00 Охотники за реликвиями 17:30 Охотники за складами 18:00 Махинаторы 19:00 Колесо: игра на выживание 20:00 Голые и напуганные 21:00 Аляска: семья из леса. Выживание в глуши 22:00 Как это сделано? 22:30 Как это устроено? 23:00 Махинаторы 00:00 Охотники за реликвиями 00:30 Охотники за складами 01:00 Беар Гриллс: Выжить любой ценой 02:00 Колесо: игра на выживание 03:00 Голые и напуганные 03:55 Аляска: семья из леса. Выживание в глуши 04:50 Беар Гриллс: Выжить любой ценой 05:40 Молниеносные катастрофы 06:30 Как это сделано? 06:55 Как это устроено? Вторник 07:20 Махинаторы 08:10 Охотники за реликвиями 08:35 Охотники за складами 09:00 Беар Гриллс: Выжить любой ценой 10:00 Как это устроено? 10:30 Как это сделано? 11:00 Охотники за реликвиями 11:30 Охотники за складами 12:00 Коллекционеры авто 15:00 Беар Гриллс: Выжить любой ценой 16:00 Как это сделано? 16:30 Как это устроено? 17:00 Охотники за реликвиями 17:30 Охотники за складами 18:00 Махинаторы 19:00 Гений автодизайна 20:00 Уникальные тачки с Уиллом Кастро 21:00 Уличные гонки 22:00 Как это сделано? 22:30 Как это устроено? 23:00 Махинаторы 00:00 Охотники за реликвиями 00:30 Охотники за складами 01:00 Беар Гриллс: Выжить любой ценой 02:00 Уникальные тачки с Уиллом Кастро 03:00 Гений автодизайна 03:55 Уличные гонки 04:50 Беар Гриллс: Выжить любой ценой 05:40 Молниеносные катастрофы 06:30 Как это сделано? 06:55 Как это устроено? ...
Правильная мысль. А что сложного? Составить регулярку? А дальше всё очень просто. Берёте строку, вырезаете из неё время, и пишите в массив в качестве ключей. Потом ключи сортируете http://fi2.php.net/manual/ru/function.uksort.php, и пробегаетесь по массиву, чтоб удалить идущие друг за другом дубли.
Ок. /[012][0-9]:[0-5][0-9]/ - регулярка. Удалил время, остались одни тв-программы. Сделал из этих строк массив (именно из строк, верно? Типа каждая строка - это элемент массива) Как новичок, не пойму что дальше делать... Расскажите подробнее, пожалуйста?
до preg_replace надо сделать ещё preg_match_all по времени. Нужно чтоб каждое время было индексом массива, название передачи - значением. P.S. Не надо оправдываться тем, что новичок --- Добавлено --- В принципе, задача простая. Немного заставляет задуматься только возможный случай, когда время есть в названии передачи (какое-нибудь "Вест в 21:00"). Вот его навскидку не могу сказать, как правильно обработать. --- Добавлено --- Хотя, может какой-нибудь регуляркой с использованием маркера начала строки, думать и пробовать надо.
Получается в итоге будут два массива. Я правильно понял? Один - со временем, другой - с названиями. А как дальше?
Нет, один массив, в котором ключи - время, значения - названия. Дальше останется отсортировать по ключам, убрать идущие подряд дубли и вывести --- Добавлено --- Ассоциативный массив я имею в виду