Форум программистов, компьютерный форум, киберфорум
PHP: RegExp
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.63/8: Рейтинг темы: голосов - 8, средняя оценка - 4.63
0 / 0 / 0
Регистрация: 13.04.2013
Сообщений: 19

Парсинг страницы html

26.12.2013, 18:50. Показов 1774. Ответов 5
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Есть некая html страница. Я получаю значение одного из атрибутов какого-то элемента (id,name,class) вне зависимости это div, p или table. Мне надо как-то пропарсить всю страницу чтоб найти позицию ЗАКРЫТИЯ этого тега. тоесть если есть типо:
HTML5
1
<div id="forsearch">...<div></div><div></div>...</div>
то мне надо найти позицию закрытия именно последнего блока. Как это сделать?
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
26.12.2013, 18:50
Ответы с готовыми решениями:

Парсинг Html страницы
Доброго времени суток. нужно розпарсить хтмль страницу с помощью регулярных выражений нужно без PDO , DOM никак не могу найти ошыбку в...

Парсинг html страницы
Всем привет! Помоги пожалуйста с регулярными выражениями! Представим что есть html страница, на которой содержится информация которую...

парсинг страницы
Здравствуйте! Никак не могу составить регулярное выражение для парсинга, помогите пожалуйста. Нужно выбрать со страницы...

5
365 / 372 / 89
Регистрация: 01.12.2013
Сообщений: 1,629
26.12.2013, 19:33
при вложенных блоках одной регуляркой достоверно можно взять только открытие тега с аттрибутами.. искать закрывающий тег именно этого блока придется последовательно находя и подсчитывая количество открывающих и закрывающих тегов вложенных блоков..
1
0 / 0 / 0
Регистрация: 13.04.2013
Сообщений: 19
27.12.2013, 17:58  [ТС]
ads, а есть какие-то заготовки или классы для подобного? что с нуля не писать?
0
601 / 468 / 73
Регистрация: 22.01.2009
Сообщений: 1,180
Записей в блоге: 1
27.12.2013, 18:12
alexandresheva, http://regex101.com/r/dM4nC1 надеюсь, как из этого позицию извлечь, труда не составит?
1
0 / 0 / 0
Регистрация: 13.04.2013
Сообщений: 19
27.12.2013, 18:54  [ТС]
если бы все было так просто... но ведь оно парсит все внутри первого дива на странице.. может как-то обычным парсингом строк? типо найти точное вхождение и позицию после него:
PHP
1
$position = stripos($page, '<div id="forsearch">') + strlen('<div id="forsearch">');
а потом как-то циклом перебирать открывающиеся и закрывающиеся дивы после этой позиции, пока количество закрывающихся на 1 не превысит количество открывающихся? (т.к. позиция после уже открытого)
только как такой цикл написать...
0
601 / 468 / 73
Регистрация: 22.01.2009
Сообщений: 1,180
Записей в блоге: 1
27.12.2013, 21:31
http://www.php.net/manual/ru/f... -match.php пятым параметром воспользуйтесь. нужный вам див ищите с помощью того же strpos(id="...") минус что-нибудь или плюс. если что-то более сложное, составьте небольшую регулярку аля
PHP
1
preg_match('`<div\s++class="myclass"`', $text, $match);
или как вам там нужно, это уже отдельная задача.

Добавлено через 13 минут
Цитата Сообщение от alexandresheva Посмотреть сообщение
а потом как-то циклом перебирать открывающиеся и закрывающиеся дивы после этой позиции, пока количество закрывающихся на 1 не превысит количество открывающихся?
тогда уж лучшим решением бы было взять substr до найденной позиции. потом найти закрывающий, а потом прибавить одну длину к другой. и получится смещение. пхп достаточно быстро работает со строками
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
27.12.2013, 21:31
Помогаю со студенческими работами здесь

Парсинг страницы
Требуется сделать выбор из страницы html разной информации, но тк я совсем начинающий пользователь php, я пытаюсь разобраться в чужом коде....

Парсинг HTML
Подскажите как можно распарсить все значения по указаному полю например здесь указано &lt;div...

html парсинг
Здравствуйте, товарищи программисты! Столкнулся с проблемой парсинга html - документа. Сами мы биологи и в web-технологиях не силён. ...

Парсинг HTML, генерация новой HTML страницы
Добрый день. Пишу небольшое расширение для Firefox, используя JS. Общая задача выглядит так: Необходимо сгенерировать...

Парсинг html страницы
хочу сделать автоматическое скачивание файлов по ключевому слову на картинке есть кнопка которая выдаёт ссылку на скачку(первая...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Новые блоги и статьи
Символьное дифференцирование
igorrr37 13.02.2026
/ * Логарифм записывается как: (x-2)log(x^2+2) - означает логарифм (x^2+2) по основанию (x-2). Унарный минус обозначается как ! в-строка - входное арифметическое выражение в инфиксной(обычной). . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru