Проблема с pcre-паттерном

iNfantry

Новичок
Всем привет, давно столкнулся с такой проблемой и каждый раз ее обходил разынми костылями, но это надоело и захотелось раз и навсегда прояснить этот вопрос. Итак, в чем проблема.
Допустим у нас есть таблица хтмл и нужно спарсить все ее строки с колонками с помощью preg_match_all. Именно тут и таится проблема - если колонок больше какого-то количества, а точнее не колонок а искомых выражений обозначенных скобками - то паттерн не срабатывает. Поясню
PHP:
preg_match_all('/<tr><td>([^<]+)<\/td><td>([^<]+)<\/td><td>([^<]+)<\/td><td>([^<]+)<\/td><\/tr>/', $buf, $rows); // - сработает
preg_match_all('/<tr><td>([^<]+)<\/td><td>([^<]+)<\/td><td>([^<]+)<\/td><td>([^<]+)<\/td><td>([^<]+)<\/td><td>([^<]+)<\/td><td>([^<]+)<\/td><td>([^<]+)<\/td><\/tr>/', $buf, $rows); // - не сработает только потому что выражений (...) больше 5 или 6, не помню точно
Как обойти это дурацкое ограничение?
 

AnrDaemon

Продвинутый новичок
1. У нас не парсят.
2. Используйте правильные инструменты. (DOM, XMLParser, etc.)
 

iNfantry

Новичок
Извиняюсь, я ошибся с выражением, наверное и в прошлые разы ошибался, потому что сейчас проверил простой вариант с кучей колонок - все работает, по крайней мере на 30 выражений ограничения нет. Тему можно закрыть.
 

c0dex

web.dev 2002-...
Команда форума
Партнер клуба
Обсуждения путей кражи контента (в ним относится парсинг) - запрещены на форуме.
 
Сверху