powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / (PHP, Perl) Разбор HTML с использованием регулярных выражений
2 сообщений из 2, страница 1 из 1
(PHP, Perl) Разбор HTML с использованием регулярных выражений
    #33059228
~newid()~
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
задача, наверное, простая: требуется выдернуть из текста HTML самые вложенные теги TD с их содержимым. например, вот из такого куска:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
    <tr> 
        <td>text1</td>
    </tr>
    <tr> 
        <td><strong>__text:</strong> text2</td>
    </tr>
    <tr> 
        <td>
            <table border="0" cellpadding="3" 
                                  cellspacing="5" class="some">
                <tr valign="top"> 
                    <td>
                        text3
                    </td>
                    <td>
                        text4                    </td>
                    <td>
                        text5                    </td>

пишу так: <td[^>]*>(.*?)</td>
не всё правильно выдергивается, например:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
        <td>
            <table border="0" cellpadding="3" 
                                  cellspacing="5" class="some">
                <tr valign="top"> 
                    <td>
                        text3
                    </td>
соответствует шаблону, но это не то, что мне нужно, здесь должно быть:
Код: plaintext
1.
2.
3.
                   <td>
                        text3
                    </td>
подскажите, плиз, как решить задачку.
...
Рейтинг: 0 / 0
(PHP, Perl) Разбор HTML с использованием регулярных выражений
    #33060355
Макс М.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
1.
2.
3.
4.
$a = ' <td><table><tr><td>test</td></tr></table><td> 
   <td><td > test 1</td>';
preg_match_all("~<td[^>]*>(?!<td)(?>.(?!<td))+<\/td>~", $a, $m);
print_r($m);
...
Рейтинг: 0 / 0
2 сообщений из 2, страница 1 из 1
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / (PHP, Perl) Разбор HTML с использованием регулярных выражений
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]