| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > PHP: Общие вопросы > как правильно использовать preg_match_all |
| Автор: beginweb 23.8.2006, 18:26 |
| Help me please. Есть страничка которую я хочу загнать в массив, но ... Если ее "отформатировать" (в определённых местах проставить перенос строки), то что-то получается, а в таком виде как есть, ну никак (_http://search.msn.com/news/results.aspx?q=www&FORM=QBNR) использую preg_match_all ('/()(.*)()/i', $contents, $out, PREG_SET_ORDER) для определения блока новостей. Такое впечатление, что ф-ия отрабатывает не с последующего символа, а с последующей строки. |
| Автор: ewolf 23.8.2006, 18:59 |
| Попробуй использовать модификатор m http://www.php.net/manual/ru/reference.pcre.pattern.modifiers.php |
| Автор: beginweb 23.8.2006, 19:09 |
| m - не помогаИт |
| Автор: ewolf 23.8.2006, 19:45 |
| Ну вообще-то неудивительно, по такой регулярке /()(.*)()/i Ты же все символы сразу захватываешь. Объясни подробнее, что ты хочешь выделить |
| Автор: beginweb 23.8.2006, 20:08 |
| регулярка такова : нужно определить ньюсы, которые есть на сайте. Тобиш мне нужно "захватить" ссылки и краткие сведения о содержании. Я пытаюсь сделать preg_match_all ('/(<h3)(.*)(\/h3>)/m', $contents, $out); Но масссив не правильно заполняется. (выводится вся сраничка без разделения по новостям print_r ($out) .На выходе - Элемент массива - вся страница. Может я не правильно определяю "начало" ->"конец блока". ? // - как правильно енто сделать ??? -// |
| Автор: $дмитрий 23.8.2006, 20:47 | ||
смотри, к примеру нужно получить все содержимое между <h3> и </h3>б пишем
а вообще нужно разобратся между чем и чем нужно выдрать |
| Автор: faost 24.8.2006, 02:34 |
| Как я понял, тебе нужно составить регулярное выражение, которое будет выдирать новости с http://search.msn.com/news/results.aspx?q=www&FORM=QBNR ? |
| Автор: beginweb 24.8.2006, 10:18 |
| Дмитрий, спасибо. Всё получилось |