Форум программистов, компьютерный форум, киберфорум
PHP: RegExp
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.73/11: Рейтинг темы: голосов - 11, средняя оценка - 4.73
105 / 105 / 19
Регистрация: 13.10.2009
Сообщений: 406
1

Составить регулярку, выдергивающую текст между тегами

26.07.2014, 14:27. Показов 2216. Ответов 6
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Всем привет!
Помогите составить регулярку, выдергивающую текст между тегами
пример:
HTML5
1
2
3
4
5
6
7
<div align='center'><b>***</b></div>
    
текст.<br />
текст.<br />
текст.<br />
текст.<br />
<div id='bg_sett' align='right'>
В итоге хотелось бы увидеть:
текст.<br />
текст.<br />
текст.<br />
текст.<br />
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
26.07.2014, 14:27
Ответы с готовыми решениями:

Как составить регулярку для поиска между двумя символами? Например, между { и }, между [ и ]
Здравствуйте. Как составить регулярку между двумя знаками. Например между { и }, , {} и т д....

Составить регулярку! взять текст из H1 и H2
Не могу написать две регулярки одна для h1 и другая для h2 вот кусок кода &lt;div class=&quot;title_box&quot;...

Получить текст между тегами
Пожалуйста помогите выбрать текст между тегами ( bbcode сообщения из БД) Вот, что получаю из БД:...

Получить текст между тегами
Здравствуйте. Необходимо получить между ббкодами code, делаю так: preg_match_all('/\(.*?)\/',...

6
368 / 406 / 165
Регистрация: 29.05.2014
Сообщений: 1,494
26.07.2014, 14:38 2
Как то очень не конкретно задача поставлена. Между какими тэгами?
Если брать конкретный пример регулярка будет такая:
PHP
1
2
3
4
5
6
7
8
9
$text="<div align='center'><b>***</b></div>
        текст.<br />
        текст.<br />
        текст.<br />
        текст.<br />
        <div id='bg_sett' align='right'>";
preg_match("/<\/div>(.*)<div/isU",$text,$result);
echo $result[1];
echo htmlspecialchars($result[1]);//и если надо на <br/> посмотреть ))
1
105 / 105 / 19
Регистрация: 13.10.2009
Сообщений: 406
27.07.2014, 10:57  [ТС] 3
нужно содержимое между
HTML5
1
<div align='center'><b>***</b></div>
и
HTML5
1
<div id='bg_sett' align='right'>
Проверил вашу регулярку на http://regexpal.com/ , не работает.
0
368 / 406 / 165
Регистрация: 29.05.2014
Сообщений: 1,494
27.07.2014, 11:08 4
Цитата Сообщение от Gabberr Посмотреть сообщение
Проверил вашу регулярку на http://regexpal.com/ , не работает.
как теперь жить? Пошёл делать сэппуку...
0
105 / 105 / 19
Регистрация: 13.10.2009
Сообщений: 406
27.07.2014, 11:22  [ТС] 5
Вместо сарказма могли бы помочь разобраться..
0
368 / 406 / 165
Регистрация: 29.05.2014
Сообщений: 1,494
27.07.2014, 11:26 6
Цитата Сообщение от Gabberr Посмотреть сообщение
Вместо сарказма могли бы помочь разобраться..
А что там разбираться? Код рабочий. Но если ты предпочитаешь тестировать его, не в PHP, а хрен знает где...
0
601 / 468 / 73
Регистрация: 22.01.2009
Сообщений: 1,180
Записей в блоге: 1
28.07.2014, 02:12 7
Gabberr, у регулярных выражений есть несколько диалектов, т.к. есть несколько regex-движков. приведенный вами сайт использует js-ные регулярные выражения, вам нужны pcre-шные. pcre движок гораздо сложнее заставить работать в браузере, поскольку он написан на си и не встроен в бразуер. но таки один человек его портировал (видимо, через emscriptten): http://regex101.com/.
В javascrip-овом движке нет модификатора s (PCRE_DOTALL), вместо него используется любой полный символьный класс (например, [\s\S]) вместо точки.
вот тот же пример, но с правильными модификаторами: http://regex101.com/r/zN8aK3/1
1
28.07.2014, 02:12
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
28.07.2014, 02:12
Помогаю со студенческими работами здесь

Как составить регулярку вытаскивающую текст из HTML-страницы
Как из html вида: &lt;span itemprop=&quot;actors&quot;&gt;&lt;a href=&quot;/name/14033/&quot;&gt;Келли Макдоналд&lt;/a&gt;&lt;/span&gt; ...

Вырезать и сохранить текст расположеный между тегами <br>*</br>
Как вырезать и сохранить текст расположеный между тегами &lt;br&gt;*&lt;/br&gt;, именно весь текст, пробую вот...

Достать контент (текст между тегами) из др. сайта
Здравствуйте! Есть небольшая проблема - не получается толково достать текст из др. сайта. Все что...

preg_replace вырезать атрибут title и текст между тегами
$text = '&lt;acronym title=&quot;Текст &lt;title&gt; для информационного элем&quot;&gt;Заголовок (Title)&lt;/acronym&gt;';...


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

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru