ANTICHAT.XYZ    VIDEO.ANTICHAT.XYZ    НОВЫЕ СООБЩЕНИЯ    ФОРУМ  
Баннер 1   Баннер 2

ANTICHAT — форум по информационной безопасности, OSINT и технологиям

ANTICHAT — русскоязычное сообщество по безопасности, OSINT и программированию. Форум ранее работал на доменах antichat.ru, antichat.com и antichat.club, и теперь снова доступен на новом адресе — forum.antichat.xyz.
Форум восстановлен и продолжает развитие: доступны архивные темы, добавляются новые обсуждения и материалы.
⚠️ Старые аккаунты восстановить невозможно — необходимо зарегистрироваться заново.
Вернуться   Форум АНТИЧАТ > Программирование_OLD > PHP, PERL, MySQL, JavaScript
   
 
 
Опции темы Поиск в этой теме Опции просмотра

  #481  
Старый 05.06.2009, 12:40
alwex
Участник форума
Регистрация: 14.12.2008
Сообщений: 140
Провел на форуме:
186812

Репутация: 14
По умолчанию

сделайте чтобы так было
<tr class="te70"><td>Manufacturer, model (модель телефона)</td><td>ТУТ ТЕКСТкакойй надо достать</td></tr>
 

  #482  
Старый 05.06.2009, 12:48
Red_Red1
Участник форума
Регистрация: 12.01.2007
Сообщений: 262
Провел на форуме:
4608122

Репутация: 874
Отправить сообщение для Red_Red1 с помощью ICQ
По умолчанию

Код:
<tr class="te70"><td>(.*)<\/td><td>(.*)<\/td>
Первый карман - "Любой текст"
Второй - "Это надо узнать"
Вообще достаточно <td>(.*?)<\/td> но тут важно парсить только строчки указаного вида (т.е. только <tr class="te70"><td>Любой текст</td><td>Это надо узнать</td></tr>) Причем "Любой текст" не совсем верно думаю, потому как если в тексте будут </td> то эта регулярка не сработает. И разбор чуть не такой при использовании короткой регулярой.

Последний раз редактировалось Red_Red1; 05.06.2009 в 12:50..
 

  #483  
Старый 05.06.2009, 13:05
FireFenix
Постоянный
Регистрация: 03.06.2009
Сообщений: 385
Провел на форуме:
3178262

Репутация: 389
По умолчанию

PHP код:
<?php

$str 
'<tr class="te70"><td>Любой текст</td><td>Это надо узнать</td></tr>';
$regexp '/<tr[^>]*><td[^>]*>.*<\/td><td[^>]*>(.*)<\/td><\/tr>/';
preg_match_all($regexp$str$match);
print_r($match);
        
?>
Вот устойчивая регулярка выведет в $match[1] нужную "Это нада узнать"

Последний раз редактировалось FireFenix; 05.06.2009 в 13:09..
 

  #484  
Старый 05.06.2009, 13:13
alwex
Участник форума
Регистрация: 14.12.2008
Сообщений: 140
Провел на форуме:
186812

Репутация: 14
По умолчанию

спс. роботает
 

  #485  
Старый 05.06.2009, 22:24
Doom123
Постоянный
Регистрация: 11.11.2006
Сообщений: 834
Провел на форуме:
3941248

Репутация: 668


Отправить сообщение для Doom123 с помощью ICQ
По умолчанию

чёт у меня башка ваще не варит =\\


есть строка
Код:
<input type="hidden" name="inviter" value=""><input type="hidden" name="token" value="67f21d69aa231" />
есть регулярка

Код:
<input.*?value="(.*?)".*?name="(.+?)".*?>#is
в результате он находит

Код:
    [1] => Array
        (
            [0] => 
        )

    [2] => Array
        (
            [0] => token
        )
Не могу понять где я ошибся .... почему он НАХОДИТ чтото ... по идеи не должно же =\\
 

  #486  
Старый 05.06.2009, 22:34
mailbrush
Познавший АНТИЧАТ
Регистрация: 24.06.2008
Сообщений: 1,996
Провел на форуме:
6075534

Репутация: 2731


Отправить сообщение для mailbrush с помощью ICQ
По умолчанию

Код:
name="(.+?)"
Вот.. Тут находит.
 

  #487  
Старый 05.06.2009, 22:35
FireFenix
Постоянный
Регистрация: 03.06.2009
Сообщений: 385
Провел на форуме:
3178262

Репутация: 389
По умолчанию

Порядок следования value и name в регулярном выражении не соответствует тексту
PHP код:
<?php

$string 
'<input type="hidden" name="inviter" value=""><input type="hidden" name="token" value="67f21d69aa231" />';
$regexp '/<input.*?name="(.+?)".*?value="(.*?)".*?>/is';

preg_match_all($regexp$string$match);
print_r($match);
    
?>
Выдаст
Код:
Array
(
    [0] => Array
        (
            [0] => <input type="hidden" name="inviter" value="">
            [1] => <input type="hidden" name="token" value="67f21d69aa231" />
        )

    [1] => Array
        (
            [0] => inviter
            [1] => token
        )

    [2] => Array
        (
            [0] => 
            [1] => 67f21d69aa231
        )

)
 

  #488  
Старый 05.06.2009, 22:40
Doom123
Постоянный
Регистрация: 11.11.2006
Сообщений: 834
Провел на форуме:
3941248

Репутация: 668


Отправить сообщение для Doom123 с помощью ICQ
По умолчанию

FireFenix млять ты читал что я написал ? прочти 10 раз ... я написал что НЕ ДОЛЖНО НАХОДИТЬ ...

mailbrush а это тут причём .. порядок следования не соответствует ... так что это тут не причём ..
 

  #489  
Старый 05.06.2009, 22:45
FireFenix
Постоянный
Регистрация: 03.06.2009
Сообщений: 385
Провел на форуме:
3178262

Репутация: 389
По умолчанию

Цитата:
Сообщение от Doom123  
FireFenix млять ты читал что я написал ? прочти 10 раз ... я написал что НЕ ДОЛЖНО НАХОДИТЬ ...
Упс..... наверное оно считывает 2 тега как 1 большой тег с кучей левого текста.
Можно край тега ограничить [^>]*> и всё будет намана
 

  #490  
Старый 05.06.2009, 22:48
Doom123
Постоянный
Регистрация: 11.11.2006
Сообщений: 834
Провел на форуме:
3941248

Репутация: 668


Отправить сообщение для Doom123 с помощью ICQ
По умолчанию

я поставил ограничение жадности "?" тоесть еси он доходит до первого > он останавливается
 
 





Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT.XYZ