Регулярные выражения

Тема в разделе "PHP", создана пользователем AlexeyForpost, 25 ноя 2009.

  1. AlexeyForpost

    AlexeyForpost Member

    Регистр.:
    15 июл 2009
    Сообщения:
    540
    Симпатии:
    0
    Здравствуйте.
    Подскажите пожалуйста, как удалить слово начинающееся на
    .
     
  2. zerg

    zerg Administrator Команда форума

    Регистр.:
    18 июл 2008
    Сообщения:
    4.254
    Симпатии:
    3
    Ответ: Регулярные выражения

    вот так к примеру
    PHP:
    $document='my letterad breterr';
    $text preg_replace ("/letter[A-z]{0,10}/is"""$document);
    echo 
    $text;
     
  3. AlexeyForpost

    AlexeyForpost Member

    Регистр.:
    15 июл 2009
    Сообщения:
    540
    Симпатии:
    0
    Ответ: Регулярные выражения

    Здравствуйте.
    Подскажите пожалуйста, как спарсить содержимое тега
    [HIDE="1"]<A HREF="/word/word2/index.htm" TITLE="lala" TARGET="_top" может ещё какие-то аргументы будут>lalaltrala</A>[/HIDE]
    Как спарсить содержимое href="", только в том случае, если в этом содержимом 3 раза встречается символ /
     
  4. zerg

    zerg Administrator Команда форума

    Регистр.:
    18 июл 2008
    Сообщения:
    4.254
    Симпатии:
    3
    Ответ: Регулярные выражения

    ну вот к примеру так
    PHP:
    $post='<A HREF="/word/word2/index.htm" TITLE="lala" TARGET="_top" может ещё какие-то аргументы будут>lalaltrala</A>';
    echo 
    preg_match_all('|href="(/[A-z0-9]{1,20}/[A-z0-9]{1,20}/[A-z0-9.]{1,20}?)"|is'$post$post1);
    print_r($post1);
     
  5. AlexeyForpost

    AlexeyForpost Member

    Регистр.:
    15 июл 2009
    Сообщения:
    540
    Симпатии:
    0
    Ответ: Регулярные выражения

    {PHP] preg_match_all('|href="(/[A-z0-9]{1,20}/[A-z0-9]{1,20}/[A-z0-9.]{1,20}?)"|is', $post, $post1); [/php]
    Можно ли этот запрос переделать, и вместо первого [A-z0-9]{1,20} вставить определённого слово
    ?
     
  6. leksus

    leksus Супер-модератор

    Регистр.:
    24 авг 2009
    Сообщения:
    466
    Симпатии:
    0
    Ответ: Регулярные выражения

    можно, вставляй :)

    тупо замени [A-z0-9]{1,20} на word
     
  7. AlexeyForpost

    AlexeyForpost Member

    Регистр.:
    15 июл 2009
    Сообщения:
    540
    Симпатии:
    0
    Ответ: Регулярные выражения

    Не хочет..Пробовал
     
  8. leksus

    leksus Супер-модератор

    Регистр.:
    24 авг 2009
    Сообщения:
    466
    Симпатии:
    0
    Ответ: Регулярные выражения

    AlexeyForpost, дай урл, который хочешь выцепить, посмотрим..
     
  9. AlexeyForpost

    AlexeyForpost Member

    Регистр.:
    15 июл 2009
    Сообщения:
    540
    Симпатии:
    0
    Ответ: Регулярные выражения

    Спасибо, получилось.
    Веб-сервер глючил... Ребутнул его и всё заработало :)
     
  10. AlexeyForpost

    AlexeyForpost Member

    Регистр.:
    15 июл 2009
    Сообщения:
    540
    Симпатии:
    0
    Ответ: Регулярные выражения

    Подскажите пожалуйста регулярку, которая бы выдавала содержимое между 2мя русскими словами(слово1 и слово2):
    [HIDE="1"]слово1 АЯяаABC-_!:xyz слово2 [/HIDE]
     
  11. leksus

    leksus Супер-модератор

    Регистр.:
    24 авг 2009
    Сообщения:
    466
    Симпатии:
    0
    Ответ: Регулярные выражения

    не проверял, но должно работать
    PHP:
    preg_match ('#слово1(.)*слово2#U'$string$res);
     
  12. zerg

    zerg Administrator Команда форума

    Регистр.:
    18 июл 2008
    Сообщения:
    4.254
    Симпатии:
    3
    Ответ: Регулярные выражения

    я так делаю
    PHP:
    preg_match ('|слово1(.*?)слово2|is'$string$res); 
     
  13. leksus

    leksus Супер-модератор

    Регистр.:
    24 авг 2009
    Сообщения:
    466
    Симпатии:
    0
    Ответ: Регулярные выражения

    ну да, в рамках заявленного это тож подходит )
     
  14. AlexeyForpost

    AlexeyForpost Member

    Регистр.:
    15 июл 2009
    Сообщения:
    540
    Симпатии:
    0
    Ответ: Регулярные выражения

    Здравствуйте.
    Помогите пожалуйста спарсить урл вида:
    [HIDE="1"]http://www.poddomen.domen.ru/index.php/news/1234-{цифры,быквы,-}.html[/HIDE]
     
  15. zerg

    zerg Administrator Команда форума

    Регистр.:
    18 июл 2008
    Сообщения:
    4.254
    Симпатии:
    3
    Ответ: Регулярные выражения

    вот так к примеру

    PHP:
    <?
    $file='http://www.poddomen.domen.ru/index.php/news/1234-dfgdfgdfg45645.html';
    preg_match_all('|(http://.*?/index.php/news/[1-9]{4}.*?html)|is',$file$matches);
    print_r($matches);
     
  16. AlexeyForpost

    AlexeyForpost Member

    Регистр.:
    15 июл 2009
    Сообщения:
    540
    Симпатии:
    0
    Ответ: Регулярные выражения

    Как удалить подстроку в переменной $text по следующему правилу:
    Подстрока начинается с первого символа переменной $text и заканчивается символом -
     
  17. zerg

    zerg Administrator Команда форума

    Регистр.:
    18 июл 2008
    Сообщения:
    4.254
    Симпатии:
    3
    Ответ: Регулярные выражения

    и что не получается?
     
  18. AlexeyForpost

    AlexeyForpost Member

    Регистр.:
    15 июл 2009
    Сообщения:
    540
    Симпатии:
    0
    Ответ: Регулярные выражения

    Уже получилось.
    Сделал не регуляркой.

    Другой вопрос.

    Исходник:
    [HIDE="1"]<a href="javascript:launchArticleSlideshow();"><img
    src="/resources/r/?m=02&d=20100322&t=2&i=79830200&w=155&r=2010-03-22T081236Z_01_AMUE62L0MT100_RTROPTP_0_ORUTP-USA-HEALTHCARE"
    border="0" alt="Photo"
    />[/HIDE]

    Регулярка:
    [HIDE="1"]$html=file_get_contents("http://ru.reuters.com/article/topNews/idRUMSE62L07U20100322");
    preg_match ('|<a href="javascript:launchArticleSlideshow()(.*?)<|is',$html,$preg);[/HIDE]
    Результат:
    [HIDE="1"]array(3) { [0]=> string(82) "' + arrArticleImages[intIndex] + '<" [1]=> string(0) "" [2]=> string(39) "();">' + arrArticleImages[intIndex] + '" } [/HIDE]
    Надо получить содержимое scr="{это}"?
    Если в регулярку добавляю ; то она вообще ничего не парсит.
     
  19. zerg

    zerg Administrator Команда форума

    Регистр.:
    18 июл 2008
    Сообщения:
    4.254
    Симпатии:
    3
    Ответ: Регулярные выражения

    а ты за экранируй
    Код:
    \;
     
  20. AlexeyForpost

    AlexeyForpost Member

    Регистр.:
    15 июл 2009
    Сообщения:
    540
    Симпатии:
    0
    Ответ: Регулярные выражения

    Пробовал - не помогает.
     

Поделиться этой страницей