На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
Модераторы: ALXR
Страницы: (2) 1 [2]  все  ( Перейти к последнему сообщению )  
    > PHP: регулярные выражения , помогите новичку
      bur80, пример приведи. Потому что для "и", как я его понимаю, ничего делать не нужно.
        Цитата SiMM @
        bur80, пример приведи. Потому что для "и", как я его понимаю, ничего делать не нужно.

        Ну, например, если мне нужно найти наличие некоей последовательности символов, то я могу сделать так:
        Цитата
        /abc/i

        Если мне нужно найти слово, содержащее определённую последовательность символов, то я делаю так:
        Цитата
        /апел(^[\W]+)/i

        Как мне найти то, что содержиться между двумя разными последовательностями символов ? Понимаю, что вопрос тривиальный, но не могу найти удачный пример, чтобы понять как работает механизм регулярных выражений :(
        Итак, я знаю как найти одну последовательность символов, а как найти наличие двух разных последовательностей ? Ну, например, abc и qwe ? :wacko:
          /abc(.*?)qwe/s
          Ты это имел в виду? В 1м "кармане" будет то, что тебе нужно.
            Цитата SiMM @
            /abc(.*?)qwe/s
            Ты это имел в виду? В 1м "кармане" будет то, что тебе нужно.

            Да, это :yes: А чем 1-й карман от второго отличается и от нулевого ? :huh:
              Цитата bur80 @
              А чем 1-й карман от второго отличается и от нулевого ?
              Номером ;)
              Нулевой карман - это всё, что вошло в регулярник. Остальные карманы нумеруются от единицы (первая парная скобка - первый карман, вторая - второй и т.д.). Это если забыть о существовании (?:...)
                Цитата SiMM @
                Цитата bur80 @
                А чем 1-й карман от второго отличается и от нулевого ?
                Номером ;)
                Нулевой карман - это всё, что вошло в регулярник. Остальные карманы нумеруются от единицы (первая парная скобка - первый карман, вторая - второй и т.д.). Это если забыть о существовании (?:...)

                Насколько я понял, в массив выводятся результаты регулярного выражения, так вот не пойму по какому принципу ? :huh: Вроде как результат регулярного выражения один или как ? :wacko:
                  Цитата bur80 @
                  Насколько я понял, в массив выводятся результаты регулярного выражения, так вот не пойму по какому принципу ?
                  preg_match_all
                    Цитата bur80 @
                    Привет всем !!!

                    Начал изучать регулярные выражения и сразу же столкнулся с проблемой составления нужного мне выражения. Требуется подсказка :yes: Итак, мне нужно выделить текст, который находится внутри определённого набора символов. Например, мне нужно найти в документе все ссылки:
                    ExpandedWrap disabled
                      ...
                      $s1 = "<a href=";
                      $s2 = ">";
                      $str = '<a href="http://www.mysite.net/script?searchtext=string&form_type=simple">My string</a>';
                      ...

                    Как мне выделить из $str ссылку, то есть текст находящийся между строками $s1 и $s2 ?

                    ExpandedWrap disabled
                      <?php
                      $str = '<a href="http://www.mysite.net/script?searchtext=string&form_type=simple">My string</a>';
                      $link = explode("<a href=\"", $str);
                      $link2 = explode("</a>", $link[1]);
                      $link3 = explode("\">", $link2[0]);
                      print "$link3[0]<br>";
                      ?>

                    Так как ты хотел.
                    Сообщение отредактировано: link -
                      link, эта тема про регулярки ! :rolleyes:
                        Понятно, просто проще через explode ну пох.
                          Если нужно найти нечто внутри границ, не включая самих границ, смотри в сторону look ahead и look behind assertions.
                          0 пользователей читают эту тему (0 гостей и 0 скрытых пользователей)
                          0 пользователей:


                          Рейтинг@Mail.ru
                          [ Script execution time: 0,0289 ]   [ 15 queries used ]   [ Generated: 7.05.24, 16:02 GMT ]