[Регулярки & Mod_Rewrite] Задай вопрос, получи ответ.

Discussion in 'PHP' started by .:EnoT:., 19 Nov 2008.

Thread Status:
Not open for further replies.
  1. .:EnoT:.

    .:EnoT:. Сексуальное чудовище

    Joined:
    29 May 2007
    Messages:
    803
    Likes Received:
    559
    Reputations:
    50
    Можно.


    PHP:

    <?php
    $html
    ='<table class="contentpaneopen">
    <tbody><tr>
        <td valign="top">
            <span class="small">
                Written by Author       </span>

            &nbsp;&nbsp;
        </td>
    </tr>

    <tr>
        <td class="contentheading">
           Hot news        </td>
    </tr>


    <tr>
    <td valign="top">

    <p>Today it good day for me</p>

    Im made grabs bots<p>&nbsp;</p><p>It easy grab link from other site </p></td>
    </tr>

    </tbody></table>
    ;
    /* Как например поместить остальные карманы между
    <p> <p> и <span class="small">
                     </span>
    */

    preg_match_all('#(contentpaneopen|contentheading|small|p)["]?>[\r\n\s]*([^>]+)</(td|span|p)#is'$html$poc);
    echo 
    "<pre>";
    print_r($poc[2]);

    ?>



    Результ:

    Code:
    <pre>Array
    (
        [0] => Written by Author       
        [1] => Hot news        
        [2] => Today it good day for me
        [3] => &nbsp;
        [4] => It easy grab link from other site 
    )
    
    
    
    


    З.Ы. Пробелы не забудь убрать из регулярки
     
    2 people like this.
  2. Дикс

    Дикс Elder - Старейшина

    Joined:
    16 Apr 2006
    Messages:
    1,194
    Likes Received:
    227
    Reputations:
    26
    как добавить в регулярку запятые?

    сейчас она парсит такое:
    а надо:
     
  3. Byrger

    Byrger Elder - Старейшина

    Joined:
    7 Mar 2008
    Messages:
    521
    Likes Received:
    26
    Reputations:
    -4
    Как заставить MOD REWRITE работать с кирилицей?
    RewriteRule ^работа index.php?module=works
    Не воспринимает....
    И так тоже
    RewriteRule ^%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%B0 index.php?module=works
     
  4. Дикс

    Дикс Elder - Старейшина

    Joined:
    16 Apr 2006
    Messages:
    1,194
    Likes Received:
    227
    Reputations:
    26
    а, всё
    спасибо
     
  5. Дикс

    Дикс Elder - Старейшина

    Joined:
    16 Apr 2006
    Messages:
    1,194
    Likes Received:
    227
    Reputations:
    26
    Byrger
    сохрани файл в utf-8 (without BOM - если есть такая опция)
     
  6. Byrger

    Byrger Elder - Старейшина

    Joined:
    7 Mar 2008
    Messages:
    521
    Likes Received:
    26
    Reputations:
    -4
    PHP:
    RewriteRule ^работа/([a-zA--яА-Я0-9]+)/  index.php?module=works&action=work&link=$
    А как сделать чтоб . _ - воспринимались?


    И ещё ... почему не работат?
    PHP:
    RewriteRule ^работа  index.php?module=works
    RewriteRule 
    ^работа/1.html    index.php?module=works&action=work&link=adenkiru
    2ой случай
     
    #366 Byrger, 14 Apr 2009
    Last edited: 14 Apr 2009
  7. dinar_007

    dinar_007 Мадемуазель

    Joined:
    18 Jan 2005
    Messages:
    1,019
    Likes Received:
    770
    Reputations:
    97
    Слэш точка

    А с какого перепугу тут русскими буквами написано вообще?
     
    #367 dinar_007, 14 Apr 2009
    Last edited: 14 Apr 2009
    6 people like this.
  8. Ru}{eeZ

    Ru}{eeZ Elder - Старейшина

    Joined:
    19 Feb 2008
    Messages:
    454
    Likes Received:
    73
    Reputations:
    -5
    Поступает текст с переходом на новую строку из текстарии (\n), но не знаю как правильно это оформить, пишу:
    Code:
    |^[\s.]{3,300}$|i
    Подскажите в чём ошибка
     
    #368 Ru}{eeZ, 15 Apr 2009
    Last edited: 15 Apr 2009
  9. Pashkela

    Pashkela Динозавр

    Joined:
    10 Jan 2008
    Messages:
    2,750
    Likes Received:
    1,044
    Reputations:
    339
    Задачу конкретизируй, что выцепить-то надо из текстарии? если есть "\n", то юзай модификтор "s"
     
  10. Ru}{eeZ

    Ru}{eeZ Elder - Старейшина

    Joined:
    19 Feb 2008
    Messages:
    454
    Likes Received:
    73
    Reputations:
    -5
    Выцепить ничего не надо, это банальная проверка "удовлетворяет ли количество символов в переменной заданному интервалу"
     
  11. Pashkela

    Pashkela Динозавр

    Joined:
    10 Jan 2008
    Messages:
    2,750
    Likes Received:
    1,044
    Reputations:
    339
    strlen($str)

    не?
     
  12. Дикс

    Дикс Elder - Старейшина

    Joined:
    16 Apr 2006
    Messages:
    1,194
    Likes Received:
    227
    Reputations:
    26
    есть валидатор строки на яваскрипте
    PHP:
    (/[0-9a-z\_\-]/i).test(name)
    но вот беда - пропускает как минимум "!"
    мне надо чтобы имя содержало только латинские символы, цифры, _, и тире

    помогите пажалусто
     
  13. Ru}{eeZ

    Ru}{eeZ Elder - Старейшина

    Joined:
    19 Feb 2008
    Messages:
    454
    Likes Received:
    73
    Reputations:
    -5
    блин, представь добавление комментария, если комментарий не короче трёх и не длиннее трёхсот, то вернётся тру, если тру - произвести запись, если фол - выдать ошибку
    PHP:
    $pregUC preg_match('|[\s.]{3,300}|i',$_POST['userComment']);
     
  14. mailbrush

    mailbrush Well-Known Member

    Joined:
    24 Jun 2008
    Messages:
    1,997
    Likes Received:
    996
    Reputations:
    155
    PHP:
    if(strlen($str)>and strlen($str)<300) echo true;
     
  15. Pashkela

    Pashkela Динозавр

    Joined:
    10 Jan 2008
    Messages:
    2,750
    Likes Received:
    1,044
    Reputations:
    339
    PHP:
    if (strlen($_POST['userComment'])>=&& strlen($_POST['userComment'])<=300) echo 'Good' ;
    else echo 
    'Bad';
     
  16. astrologer

    astrologer Elder - Старейшина

    Joined:
    30 Aug 2007
    Messages:
    837
    Likes Received:
    267
    Reputations:
    59
    Code:
    /^[-\w]+$/
     
    1 person likes this.
  17. Vid0k

    Vid0k Elder - Старейшина

    Joined:
    24 Dec 2007
    Messages:
    393
    Likes Received:
    125
    Reputations:
    13
    нужна регулярка
    Code:
    checkproxy.com
    atomintersoft.com
    my-proxy.com
    smsreklama.ru/proxy/
    freeproxy.ru
    aliveproxy.com
    proxyhunter.net
    http://www.freeproxy.ch
    http://www.haozs.net
    http://notan.h1.ru/hack/xwww/proxy6.html
    http://equ.hut1.ru/?set=proxy
    http://proxylist.blogspot.com/
    http://proxylist.h12.ru/america.htm
    
    нужно выделить отдельно домен и страница если есть
     
  18. Vid0k

    Vid0k Elder - Старейшина

    Joined:
    24 Dec 2007
    Messages:
    393
    Likes Received:
    125
    Reputations:
    13
    типо
    domen.ru и /page/page.html
    задача облегчается можно без http://
     
    #378 Vid0k, 16 Apr 2009
    Last edited: 16 Apr 2009
  19. erihtoney

    erihtoney Member

    Joined:
    3 Mar 2009
    Messages:
    91
    Likes Received:
    73
    Reputations:
    20
    PHP:
    <?
      
    $text "http://forum.antichat.ru/showthread.php?p=1226589";
      
    preg_match("/^(http:\/\/)?([^\/]+)/i"$text$matches);
      
    $host $matches[2];
      echo(
    "$host");
      echo(
    "<br>");
      
    preg_match("/[^\.\/]+\.[^\.\/]+$/"$host$matches);
      echo 
    "домен: {$matches[0]}\n";
      
    $file=$text;
        
    preg_match("/^(http:\/\/)(\S+\/)(.*)/i"$file$file_m);
        echo 
    "<br />файл: {$file_m[3]}\n";
    ?>

    Если каталогов два и больше,то:

    PHP:
    <?
      
    $text "http://www.google.ru/intl/ru/about.html";
      
    $array split ("\/"$text);
      foreach(
    $array as $index => $key)
      {
        echo(
    "$index -> $key <br />");
      }
    ?>
     
    #379 erihtoney, 16 Apr 2009
    Last edited: 23 Apr 2009
    1 person likes this.
  20. Vid0k

    Vid0k Elder - Старейшина

    Joined:
    24 Dec 2007
    Messages:
    393
    Likes Received:
    125
    Reputations:
    13
    спасибо я уже сделал
    регулярка
    Code:
    "^(.*?)(\/(.*))?$"
    
    Code:
    smsreklama.ru
    smsreklama.ru/proxy/
    http://smsreklama.ru/proxy/
    http://wwww.smsreklama.ru/proxy/
    www.smsreklama.ru/proxy/page1.html
    
    Code:
    [('smsreklama.ru', '', '')]
    [('smsreklama.ru', '/proxy/', 'proxy/')]
    [('smsreklama.ru', '/proxy/', 'proxy/')]
    [('wwww.smsreklama.ru', '/proxy/', 'proxy/')]
    [('www.smsreklama.ru', '/proxy/page1.html', 'proxy/page1.html')]
    
    это с питона и я отрезаю "http://"
    может кому пригодится
     
Thread Status:
Not open for further replies.