4 / 4 / 3
Регистрация: 05.11.2012
Сообщений: 243
1

Регулярные выражения RegExp. Как получить текст между тегом?

05.12.2012, 20:37. Показов 2996. Ответов 4

Студворк — интернет-сервис помощи студентам
Друзья, помогите пожалуйста разобраться с таким вопросом. Нужно получить текст находящийся между тегами.
HTML5
1
<td rowspan="2" style="width:67mm; text-align:center; font-weight:bold; line-height:4mm;">РОССИЙСКАЯ ФЕДЕРАЦИЯ<br>
Считать символы с помощью функций POS не получится, так как между тегами может находится и другое слово, поэтому посоветовали воспользоваться регулярными выражениями. Буду благодарен за помощь.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
05.12.2012, 20:37
Ответы с готовыми решениями:

Регулярные выражения C++. Как получить текст между заданных символов ?
Как получить в переменную wmatch то, что находится между &quot; one two end &quot; и &quot;.&quot; (в данном случае...

Регулярные выражения - получить текст в кавычках
Добра всем.. Подскажите как из текста вытащить текст заключённый в кавычки (только он меняется)...

Регулярные выражения. Выделить текст между двумя выражениями
Необходимо выделить текст между двумя выражениями: &lt;table:table-row&gt; и &lt;/table:table-row&gt;. Есть...

Регулярные выражения. Извлечь из html текст между двумя тегами
Ломаю голову с регулярными выражениями, не получается корректно решить простую задачу: Нужно...

4
Пишу на Delphi...иногда
1423 / 1278 / 286
Регистрация: 03.12.2012
Сообщений: 3,914
Записей в блоге: 5
05.12.2012, 20:51 2
ИМХО регулярку тут тащить как-то не кошерно
если необходимая информация ВСЕГДА ограничена символами ">" и "<", то можно сделать так
Delphi
1
2
3
4
5
6
7
8
9
10
11
procedure TForm2.Button1Click(Sender: TObject);
const
  tmpStr:string='<td rowspan="2" style="width:67mm; text-align:center; font-weight:bold; line-height:4mm;">РОССИЙСКАЯ ФЕДЕРАЦИЯ<br>';
var
  workStr:string;
begin
  workStr:=tmpStr;
  workStr:=Copy(workStr,Pos('>',workStr)+1,$FFFF);
  Delete(workStr,Pos('<',workStr),$FFFF);
  Memo1.Lines.Add(workStr);
end;
0
4 / 4 / 3
Регистрация: 05.11.2012
Сообщений: 243
05.12.2012, 21:12  [ТС] 3
Объясню всю ситуацию. Есть огромная куча html документов (Все эти документы по своей структуре одинаковы, но с разным текстом). Код страницы я достаю с помощью
Delphi
1
webbrowser1...innerhtml
и кидаю его в memo, далее я начинаю уже операций непосредственно с текстом находящимся в memo. Вот тут то и начинаются проблемы, грубо говоря, идёт поиск по memo1, и если я нахожу тег <td rowspan="2" style="width:67mm; text-align:center; font-weight:bold; line-height:4mm;"> Любой текст <br> то вытаскиваем текст и кидаем к примеру в edit. То что ты написал, работает на отлично, можно вот это использовать в моём случае? Или всё таки придётся работать с регулярками?
0
13095 / 5876 / 1706
Регистрация: 19.09.2009
Сообщений: 8,808
06.12.2012, 00:41 4
borockov, предлагаю воспользоваться возможностями HTML DOM. Посмотри эту тему:
Delphi парсинг TWebBrowser
0
4 / 4 / 3
Регистрация: 05.11.2012
Сообщений: 243
06.12.2012, 14:26  [ТС] 5
По моему то что надо=) спасибо=)
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
06.12.2012, 14:26
Помогаю со студенческими работами здесь

Регулярные выражения. Получить все данные между символами /n
Нужно из строки &quot;\ntest1 \ntest2 \ntest3 \ntest4 \n&quot; получить все данные между символами /n,...

Регулярные выражения: получить любые символы между заданными
Добавлено через 1 час 7 минут string pattern = &quot;&lt;a class=\&quot;oz\&quot; href=\&quot;.*\&quot;&gt;.*&lt;/a&gt; &quot;; ...

Регулярные выражение. Получить текст, который находится между символами
Есть текст такого типа: {&quot;response&quot;:} как вывести следующие данные: 1 Павел Дуров...

ЧПУ. Замена строк, регулярные выражения. Как правильно использовать переменную в регулярные выражения ?
Здравствуйте! Решил реализовать ЧПУ на своем сайте. Первый этап это замена всех реальных ссылок на...


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2023, CyberForum.ru