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

Помогите с регуляркой

  • drugoi

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

    Spritz Окт. 24, 2010, 3:32 д.п.

    Необходимо найти все url в css файле.
    отрывок css файла:

    #content .block1 .list li {background: url(../images/block1-list-separator.png) bottom no-repeat;}
    #content .block1 .list li:last-child{background:none;}
    #content .block1 .border-bottom{border-bottom:1px #44152f solid;}
    #content .block2{background:url(../images/block2-top.png) top no-repeat, url(../images/block2-bot.png) bottom no-repeat, #030a15; padding:0 26px 20px 26px;}
    #content .block2 .border-bottom{border-bottom:1px #0d262b solid;}

    регулярка:
    #(?:url\()(.*)(?:\))#i

    в варианте где
    {background: url(../images/block1-list-separator.png) bottom no-repeat;}

    находит:
    ../images/block1-list-separator.png

    то что нужно! Но в варианте где указаны бэкграунды через запятую:
    {background:url(../images/block2-top.png) top no-repeat, url(../images/block2-bot.png) bottom no-repeat, #030a15; padding:0 26px 20px 26px;}

    находит:
    ../images/block2-top.png) top no-repeat, url(../images/block2-bot.png


    Подскажите какое условие добавить или еще как-то?
    Чтобы находил:

    ../images/block1-list-separator.png
    ../images/block2-top.png
    ../images/block2-bot.png
  • VaseninM

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

    Spritz Окт. 24, 2010, 3:41 д.п., спустя 9 минут 2 секунды

    #(?:url\()(.*?)(?:\))#i
  • drugoi

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

    Spritz Окт. 24, 2010, 4:12 д.п., спустя 30 минут 49 секунд


    #(?:url\()(.*?)(?:\))#i

    SpartakuS Спасибо дружище
    я тут просто пытаюсь разобраться в регулярках)) читаю, еще пока не все понятно
    скажи вот ты добавил ? это как прочитать?
    совпадает с любым символом 0 или более раз…. а дальше?
  • Givi

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

    Spritz Окт. 24, 2010, 10:15 д.п., спустя 6 часов 2 минуты 53 секунды

    drugoi, вопрос: а нахуй указывать в одном бекграунде две картинки? Разве это полнофункциональный вариант?
  • VaseninM

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

    Spritz Окт. 24, 2010, 10:22 д.п., спустя 7 минут 6 секунд

    drugoi, читай про жаднлсть. эдво разбаница - раскажет. А я пьяный.
  • phpdude

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

    Spritz Окт. 24, 2010, 10:24 д.п., спустя 2 минуты 4 секунды

    Givi, это ксс3)
    Сапожник без сапог
  • Givi

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

    Spritz Окт. 24, 2010, 1:05 п.п., спустя 2 часа 40 минут 53 секунды

    phpdude, понял, спасибо. Отстаю я от жизни :)

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