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

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

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

    eden New Member

    Joined:
    9 Jan 2010
    Messages:
    26
    Likes Received:
    1
    Reputations:
    0
    Как вариант:
    Code:
    /[\w\.]+@\w+\.\w{2,3}/i
     
  2. djpasica

    djpasica Banned

    Joined:
    23 May 2009
    Messages:
    28
    Likes Received:
    100
    Reputations:
    -4
    составил RewriteRule для запроса вида cab.php?act=add&id=1

    воть: RewriteRule ^(.*)/(.*)/([0-9]+)\.html$ $1.php?act=$2&id=$3 [QSA,L]

    вродь и все гуд, но поле id не перлается(
     
  3. LStr1ke

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

    Joined:
    29 Jul 2009
    Messages:
    801
    Likes Received:
    145
    Reputations:
    73
    Ты к ЧПУ - в id подписываешь .html ?
    поидее все рабочее.
     
  4. Linuxoid

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

    Joined:
    13 Feb 2007
    Messages:
    200
    Likes Received:
    28
    Reputations:
    0
    Извините за тупой вопрос, но все таки...
    Как выдернуть значение скрытого поля?
    <input name="key" value="c5f8" type="hidden">
    c5f8 - меняется постоянно.

    Еще вопрос... Как заменить все двойные кавычки на одинарные в полученном документе? Пробую сделать так, не получается:
    $preg = str_replace('"', "'", $getw);
     
    #1324 Linuxoid, 9 Nov 2010
    Last edited: 9 Nov 2010
  5. SHiNiGaMi

    SHiNiGaMi Banned

    Joined:
    3 Jan 2010
    Messages:
    382
    Likes Received:
    55
    Reputations:
    15
    1)
    preg_match("#<input .*? value=(.*?) type=hidden>#iU",$parse_text,$matches);
    ответ будет в массиве $matches
    2) $preg = preg_replace("#\"#","'",$parse_text,$matches);
     
  6. djpasica

    djpasica Banned

    Joined:
    23 May 2009
    Messages:
    28
    Likes Received:
    100
    Reputations:
    -4
    да подписиваю....образом, типо
    передавать id явным образом cab/del/?id=8 то все пашет... так что проблема не в скрипте..))
     
  7. Linuxoid

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

    Joined:
    13 Feb 2007
    Messages:
    200
    Likes Received:
    28
    Reputations:
    0
    1) не заработало... :(
    Со вторым разобрался.

    Я немного не понял вообще эту регулярку... Допустим, есть страница, содержащая?
    Code:
    <input name="key" value="c5f8" type="hidden">
    <input name="key2" value="c5f8" type="hidden">
    <input name="key3" value="c5f8" type="hidden">
    <input name="key4" value="c5f8" type="hidden">
    c5f8 - меняется при каждой загрузке страницы в каждом поле. Вот надо с конкретного спарсить.
     
    #1327 Linuxoid, 9 Nov 2010
    Last edited: 9 Nov 2010
  8. FindeR

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

    Joined:
    15 Nov 2006
    Messages:
    623
    Likes Received:
    138
    Reputations:
    20
    Code:
    $text = '<input name="key" value="c5f8" type="hidden">
    <input name="key2" value="casd8" type="hidden">
    <input name="key3" value="casdf565" type="hidden">
    <input name="key4" value="sdg67dsd5f" type="hidden">';
    
    preg_match_all("/<input name=\"key[0-9]*\" value=\"[0-9a-zA-Z]*\" type=\"hidden\">/", $text, $result);    
    
    foreach ($result[0] as $val)
    {echo preg_replace("/(<input name=\"key[0-9]*\" value=\"|\" type=\"hidden\">)/", '', $val) . '<br />';}
    
    Догадываюсь, что тебе оно нужно
     
  9. Gifts

    Gifts Green member

    Joined:
    25 Apr 2008
    Messages:
    2,494
    Likes Received:
    807
    Reputations:
    614
    FindeR научитесь, пожалуйста, выделять подшаблоны. Например:
    PHP:
    $text '<input name="key" value="c5f8" type="hidden">
    <input name="key2" value="casd8" type="hidden">
    <input name="key3" value="casdf565" type="hidden">
    <input name="key4" value="sdg67dsd5f" type="hidden">'
    ;

    preg_match_all('/<input name="key[0-9]*" value="([0-9a-zA-Z]*)" type="hidden">/'$text$result);    

    foreach (
    $result[1] as $val)
    {echo 
    $val '<br />';}
     
    _________________________
  10. FindeR

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

    Joined:
    15 Nov 2006
    Messages:
    623
    Likes Received:
    138
    Reputations:
    20
    Gifts, благодарю, не знал, что так можно
     
  11. Mirrey

    Mirrey New Member

    Joined:
    10 Sep 2010
    Messages:
    35
    Likes Received:
    1
    Reputations:
    0
    Как с помощью .htaccess сделать так что бы при заходе на сайт пользователь просматривал не index.php, a default.php?
     
  12. FindeR

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

    Joined:
    15 Nov 2006
    Messages:
    623
    Likes Received:
    138
    Reputations:
    20
    DirectoryIndex default.php
     
    2 people like this.
  13. Alekzzzander

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

    Joined:
    5 Sep 2007
    Messages:
    278
    Likes Received:
    36
    Reputations:
    0
    изучая ява скрипт встал вопрос на регулярном выражении
    PHP:
    var str "Р<b>егуиляр</b>ное <b>выиражение</b> <b>р</b>ег<b>ул</b>ируетися";
    var 
    reg3 = /<b>(.*)<\/b>/g;
    var 
    res3 reg3.exec(str);
    document.write(res3);
    вопрос заключается в том, что выводит строку типа:
    а требуется выводить только буквы между тегами, в чем проблема? почему выводи все от первого до последнего за раз?
     
  14. b3

    b3 Banned

    Joined:
    5 Dec 2004
    Messages:
    2,170
    Likes Received:
    1,155
    Reputations:
    202
    Жадность не указана, поетому выдирается все между первым открытым тегом и последним.

    var reg3 = /<b>(.*)</b>/g;
    ЗЫ в коде ошибка, не закоментирован слэш <\/b>
     
  15. Alekzzzander

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

    Joined:
    5 Sep 2007
    Messages:
    278
    Likes Received:
    36
    Reputations:
    0
    а как правильно выставить эту жадность?
     
  16. eden

    eden New Member

    Joined:
    9 Jan 2010
    Messages:
    26
    Likes Received:
    1
    Reputations:
    0
    Исправить на:
    Code:
    var reg3 = /<b>(.*?)<\/b>/g; 
     
  17. Rastamanka

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

    Joined:
    26 Nov 2008
    Messages:
    429
    Likes Received:
    11
    Reputations:
    7
    Подскажите регулярку под фтп
    Вид фтп
    ftp://login:pass@serv
    ftp://login:pass@serv:port
    login:pass@serv
    login:pass@serv:port
     
    #1337 Rastamanka, 14 Nov 2010
    Last edited: 14 Nov 2010
  18. eden

    eden New Member

    Joined:
    9 Jan 2010
    Messages:
    26
    Likes Received:
    1
    Reputations:
    0
    2Rastamanka что именно тебе нужно найти с помощью регулярок?
     
  19. Rastamanka

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

    Joined:
    26 Nov 2008
    Messages:
    429
    Likes Received:
    11
    Reputations:
    7
    Надо выпарсить логин,пасс,серв
     
  20. eden

    eden New Member

    Joined:
    9 Jan 2010
    Messages:
    26
    Likes Received:
    1
    Reputations:
    0
    Code:
    m/ftp:\/\/(\w+):(\w+)@([\w\.]+)/ig
    соответственно в переменных: $1,$2,$3 - login,pass,nameserver.
     
Thread Status:
Not open for further replies.