![]() |
eXeL@B —› Оффтоп —› Несколько шаблонов в одном preg_match_all |
Посл.ответ | Сообщение |
|
Создано: 05 ноября 2011 02:30 · Поправил: ToBad · Личное сообщение · #1 Не силён в регулярках, помогите объединить в один шаблон: Делаю так: Code:
Вырезаю имя и дату модификации, нужно только это. Обрабатываю этот текст: Code:
p.s. В итоге нужен массив, который сортирую к ключу modificationDate. Есть два рабочих куска гавнокода, второй чуть быстрее первого, но тоже не красивый. Можно тут что-то оптимизировать? Code:
Code:
![]() |
|
Создано: 05 ноября 2011 05:39 · Личное сообщение · #2 |
|
Создано: 05 ноября 2011 06:15 · Личное сообщение · #3 |
|
Создано: 05 ноября 2011 07:53 · Личное сообщение · #4 Лучший SimplePie, а если регулярками, то типа того: preg_match_all('!modificationDate="([0-9]+)"[\s]+name="(.*)"[\s]+size=!Uis', $text, $matches); if (isset($matches[0]) && isset($matches[1]) && isset($matches[2])) { for ($i=0; $i< count($matches[0]); $i++) { echo "Date: ".$matches[1][$i].", Name: ".$matches[2][$i]."<br/>"; } } PS. Не проверял, навскидку написал. ----- Yann Tiersen best and do not fuck ![]() |
|
Создано: 05 ноября 2011 15:53 · Личное сообщение · #5 PE_Kill пишет: preg_match_all('!modificationDate="([0-9]+)"[\s]+name="(.*)"[\s]+size=!Uis', $text, $matches); Супер, спасибо! Это и нужно было, работает на 20% быстрее, чем мой второй код с foreach и explode. Теперь так получается: Code:
![]() |
![]() |
eXeL@B —› Оффтоп —› Несколько шаблонов в одном preg_match_all |