[Регулярка] Самое короткое совпадение

Hannes

Client
Регистрация
03.02.2016
Сообщения
527
Благодарностей
273
Баллы
63
Здравствуйте!

Вроде простая задача, а залип. Нужно получить количество страниц по тегу.
На сайте это выглядит так: 1, 2, 3 ... 98 next page

Код выглядит вот так:
Код:
<div><span class="previous_page disabled">« previous</span> <em class="current">1</em> <a rel="next" href="/123/456/hello?page=2">2</a> <a href="/123/456/hello?page=3">3</a> <a href="/123/456/hello?page=4">4</a> <a class="next_page" rel="next" href="/123/456/hello?page=2">next »</a></div>
?page=4">4</a> <a class="next_page"

Нужно получить значение страницы идущей после "> и перед </a> <a class="next_page" (выделил фиолетовым).

Вроде как задача простая, но при указание
ZennoRegex.png


Берёт от первого совпадения, а не самого короткого.

Может кто подсказать, как правильно сделать?
 

silent

Client
Регистрация
05.04.2014
Сообщения
237
Благодарностей
85
Баллы
28
Код:
\?page=\d+">(\d+)<\/a>\s+<a class="next_page"
как вариант
 
  • Спасибо
Реакции: Hannes

justhelen

Client
Регистрация
18.11.2009
Сообщения
267
Благодарностей
134
Баллы
43
(?<=<a[^<>]+>)[\d]+(?=</a>[ ]+<a class="next_page")
 
  • Спасибо
Реакции: Hannes

doc

Client
Регистрация
30.03.2012
Сообщения
8 684
Благодарностей
4 641
Баллы
113

Hannes

Client
Регистрация
03.02.2016
Сообщения
527
Благодарностей
273
Баллы
63
Всем огромнейшее спасибо! :ay::bo::dk:
 
  • Спасибо
Реакции: justhelen

budora

Client
Регистрация
13.08.2012
Сообщения
831
Благодарностей
556
Баллы
93
Может не в тему.
Если пробуете получить next_page по логике она вам уже известна, а неизвестно конечное количество.
Используя счётчик и зная конечное значение логику можно видоизменить.
 
  • Спасибо
Реакции: Hannes

Hannes

Client
Регистрация
03.02.2016
Сообщения
527
Благодарностей
273
Баллы
63
Может не в тему.
Если пробуете получить next_page по логике она вам уже известна, а неизвестно конечное количество.
Используя счётчик и зная конечное значение логику можно видоизменить.
Раз 7 прочитал, но так и не понял, что именно вы хотели этим сказать.
Сейчас логика такова: переход на страницу с тегом, получение кол. страниц, далее через счётчик парсим страницы, проверяя каждый раз через if, достигли ли мы конечной страницы.
 

budora

Client
Регистрация
13.08.2012
Сообщения
831
Благодарностей
556
Баллы
93
Всё верно. Просто меня смутило что искали номер страницы в примере 4.
 
  • Спасибо
Реакции: Hannes

Кто просматривает тему: (Всего: 1, Пользователи: 0, Гости: 1)