За последние 24 часа нас посетили 17138 программистов и 1835 роботов. Сейчас ищет 1621 программист ...

Исключение слов

Тема в разделе "Регулярные выражения", создана пользователем parrow, 25 окт 2014.

  1. parrow

    parrow Новичок

    С нами с:
    25 окт 2013
    Сообщения:
    11
    Симпатии:
    0
    Понимаю, что тема раньше поднималась, но искал часа 2, конкретного решения не нашел.
    Ситуация: есть строка - "......$b Лиса шла по $a и увидела $a ......"
    Задача: Получить подстроку "$b Лиса шла по $a", то есть до первого значения $a
    Проблема: Никак не могу написать рег. выражение, которое бы говорило: Найди мне все до $a, не включая $a
    Пробовал: /$b.+$a/, /$b[^($a)]+$a/ - от безысходности. И многое другое!
    Прошу помощи!!!
     
  2. Ganzal

    Ganzal Суперстар
    Команда форума Модератор

    С нами с:
    15 мар 2007
    Сообщения:
    9.893
    Симпатии:
    965
    /($b.+)$a/U
     
  3. parrow

    parrow Новичок

    С нами с:
    25 окт 2013
    Сообщения:
    11
    Симпатии:
    0
    Спасибо! А как понять жадность, за которую отвечает данный модификатор?
     
  4. Ganzal

    Ganzal Суперстар
    Команда форума Модератор

    С нами с:
    15 мар 2007
    Сообщения:
    9.893
    Симпатии:
    965
    есть строка - "......$b Лиса шла по $a и увидела $a ......"
    жадный режим: прам-пам-пам-бакс-би-прам-прам-бакс-эй. стоп. наша граница? а давайте нет. прам-пам-пам-пам-бакс-эй. стоп. наша граница? хз, давайте опять нет. пры-пы-пы конец строки. нету больше бакс-эй значит наша граница была. сдаем найденное по шаблону:
    "......$b Лиса шла по $a и увидела $a ......"

    нежадный режим: прам-пам-пам-бакс-би-прам-парарам-бакс-эй. стоп. наша граница ибо мы не жадные. сдаем найденное по шаблону:
    "......$b Лиса шла по $a и увидела $a ......"
     
  5. parrow

    parrow Новичок

    С нами с:
    25 окт 2013
    Сообщения:
    11
    Симпатии:
    0
    Ахах очень доходчиво)))))