ФорумПрограммированиеPHP для идиотов → Регулярки

Регулярки

  • }/{EHR

    Сообщения: 734 Репутация: N Группа: Адекваты

    Spritz 19 сентября 2009 г. 16:15

    Не могу я разобрать выражение ( Есть данные в виде video|ссылка|image|ссылка, и image|ссылка. Нужно получить ссылку после image|, но не могу реализовать в регулярках (
  • phpdude

    Сообщения: 26646 Репутация: N Группа: в ухо

    Spritz 19 сентября 2009 г. 16:25, спустя 9 минут 9 секунд

    }/{EHR, не можешь - учись, не можешь учиться - убейся
    Сапожник без сапог
  • }/{EHR

    Сообщения: 734 Репутация: N Группа: Адекваты

    Spritz 19 сентября 2009 г. 16:28, спустя 3 минуты 17 секунд


    }/{EHR, не можешь - учись, не можешь учиться - убейся
    Пока сделал так: разбил все по | , и проверяю существует ли четвертый элемент в массиве, если есть то выводить его, если нет, то вывожу второй, но это не айс )
  • artoodetoo

    Сообщения: 5147 Репутация: N Группа: в ухо

    Spritz 19 сентября 2009 г. 16:30, спустя 1 минуту 57 секунд

    ума нет - иди в пед, совести нет - иди в мед, ни того ни другого нет - иди в культпросвет, а если и туда не возьмут - иди в сельхозинститут
    Спустя 53 сек.
    но это не айс

    айс-айс, беби!
    ιιlllιlllι унц-унц
  • Dr.TRO

    Сообщения: 254 Репутация: N Группа: Адекваты

    Spritz 20 сентября 2009 г. 0:42, спустя 8 часов 11 минут 49 секунд

    <?php

    $str = '[video|lol.ru/video1.flv][image|lol.ru/image1.jpg][video|lol.ru/video2.flv][image|lol.ru/image2.jpg]';

    preg_match_all('/\[video\|([^\]]+)\]/i', $str, $matches);
    print_r($matches);

    preg_match_all('/\[image\|([^\]]+)\]/i', $str, $matches);
    print_r($matches);

    preg_match_all('/\[([video|image]{0,5})\|([^\]]+)\]/i', $str, $matches);
    print_r($matches);

    ?>
    tro@eeepc:~$ php test.php
    Array
    (
    [0] => Array
    (
    [0] => [video|lol.ru/video1.flv]
    [1] => [video|lol.ru/video2.flv]
    )

    [1] => Array
    (
    [0] => lol.ru/video1.flv
    [1] => lol.ru/video2.flv
    )

    )
    Array
    (
    [0] => Array
    (
    [0] => [image|lol.ru/image1.jpg]
    [1] => [image|lol.ru/image2.jpg]
    )

    [1] => Array
    (
    [0] => lol.ru/image1.jpg
    [1] => lol.ru/image2.jpg
    )

    )
    Array
    (
    [0] => Array
    (
    [0] => [video|lol.ru/video1.flv]
    [1] => [image|lol.ru/image1.jpg]
    [2] => [video|lol.ru/video2.flv]
    [3] => [image|lol.ru/image2.jpg]
    )

    [1] => Array
    (
    [0] => video
    [1] => image
    [2] => video
    [3] => image
    )

    [2] => Array
    (
    [0] => lol.ru/video1.flv
    [1] => lol.ru/image1.jpg
    [2] => lol.ru/video2.flv
    [3] => lol.ru/image2.jpg
    )

    )
    Спустя 83 сек.
    если что непонятно пиши ) вроде подобрал норм)
  • phpdude

    Сообщения: 26646 Репутация: N Группа: в ухо

    Spritz 20 сентября 2009 г. 0:56, спустя 14 минут 3 секунды

    Dr.TRO, +
    Сапожник без сапог
  • Dr.TRO

    Сообщения: 254 Репутация: N Группа: Адекваты

    Spritz 20 сентября 2009 г. 1:12, спустя 16 минут 43 секунды

    хехе)) спс) мне не трудно людям хорошим помочь)
  • Mustafa

    Сообщения: 22 Репутация: N Группа: Кто попало

    Spritz 18 августа 2012 г. 22:49, спустя 1063 дня 21 час 36 минут

    У меня мнение есть, но я с ним не согласен!

Пожалуйста, авторизуйтесь, чтобы написать комментарий!