На главную
ПРАВИЛА FAQ Помощь Участники Календарь Избранное DigiMania RSS
msm.ru
Модераторы: ALXR, Pr0[)!9Y, Profi
  
    > Inverse Match
      Всем привет!

      Есть некий текст:
      Цитата

      text block 1 {delim1} text block2
      wwqdsqwdq

      {delim2}

      textblock3



      И есть руглярка:
      Цитата
      {(.*?)}



      Нужно выбрать всё, что не соотвествует ей.
      Как? :o
      Трудные времена проходят, сильные люди остаются. Делай то, что считаешь правильным.
        Погуглил. Есть подозрение что это проще запрограммить чем писать регулярку, что и сделал пока )))

        Но тема актуально. Возможно это будет более быстрый способ.
        Сообщение отредактировано: HardRock -
        Трудные времена проходят, сильные люди остаются. Делай то, что считаешь правильным.
          Регвыры, помимо прочего, могут возвращать позицию найденного вхождения. Следовательно, можно легко определить границы ненужных участков строки и вырезать из нее все нужное.
            Цитата HardRock @
            Нужно выбрать всё, что не соотвествует ей.
            Как?
            Раз уж задача обратная, то и использовать функцию надо другую, а не replace
            Например в php есть preg_split...
            Это я так глянул на обозначение delim1 и delim2 и предположил, что текст надо дробить...
            "Кто хочет — ищет возможность. Кто не хочет — ищет отмазку. Найти обычно легко как одно, так и другое." © Ho Im
              Мне на самом деле для С++ =) В той библиотеке, которую юзаю, нет preg_split.
              Текст нужно дробить - все верно. Только разделители описываются регуляркой значительно более сложной чем в первом посте.

              Вобщем пожалуй оставлю как есть - с получением позиций разделителей и последующим "ручным" разьиением строки. А то похоже нельзя вытащить одной регуляркой типа "получить все подходящие куски".
              Сообщение отредактировано: HardRock -
              Трудные времена проходят, сильные люди остаются. Делай то, что считаешь правильным.
                Цитата HardRock @
                В той библиотеке, которую юзаю, нет preg_split
                Может там обычный сплит поддерживает регулярки?
                Бывает и такое :rolleyes:
                "Кто хочет — ищет возможность. Кто не хочет — ищет отмазку. Найти обычно легко как одно, так и другое." © Ho Im
                1 пользователей читают эту тему (1 гостей и 0 скрытых пользователей)
                0 пользователей:


                Рейтинг@Mail.ru
                [ Script Execution time: 0,0797 ]   [ 14 queries used ]   [ Generated: 15.11.19, 11:11 GMT ]