Регулярное выражение от 1 до 100 есть ли?

12
C
На сайте с 17.05.2012
Offline
69
clb
16668

Подскажите регулярное выражение для диапазона от 1 до 100 (1,2,3...100).

И от 100 до 200 (100,101,102...200).

DavyJohnes
На сайте с 05.01.2011
Offline
84
#1
clb:
Подскажите регулярное выражение для диапазона от 1 до 100 (1,2,3...100).
И от 100 до 200 (100,101,102...200).

1-100:

^\d{1,2}|100$

100-200:

^(1\d{2})|200$

Как-то так, наверное. Более простого решения в голову не приходит.

https://handy-tools.io (https://handy-tools.io) - Набор полезных утилит для всех!
TF-Studio
На сайте с 17.08.2010
Offline
334
#2

Сравнивать числа - лучше не регулярками, а математическими действиями

Всё ещё лучший способ заработка для белых сайтов: GoGetLinks (https://www.gogetlinks.net/?inv=fahbn8).
DavyJohnes
На сайте с 05.01.2011
Offline
84
#3
TF-Studio:
Сравнивать числа - лучше не регулярками, а математическими действиями

Я тоже сначала так подумал, ну а если нужно спарсить строки, где числа, к которым предъявляются такие требования, зарыты глубоко в строке, то как быть? Есть вариант сначала спарсить, а потом отсеивать по нужным критериям, но в таком случае получатся бОльшие затраты по памяти.

RiDDi
На сайте с 06.06.2010
Offline
285
#4
DavyJohnes:
1-100:
^\d{1,2}|100$

Неверно. 0 проскочит.

([1-9][0-9]?|100)
Вебмастер отдыхает на бережках морей. Заработок в интернете - дело техники.
C
На сайте с 17.05.2012
Offline
69
clb
#5

Что то не срабатывает при таком использовании:

http://site.ru/\?id=^\d{1,2}|100$

А так работает:

http://site.ru/\?id=\d{1,2}

Экранировать где то надо?

DavyJohnes
На сайте с 05.01.2011
Offline
84
#6
clb:
Что то не срабатывает при таком использовании:
http://site.ru/\?id=^\d{1,2}|100$
А так работает:
http://site.ru/\?id=\d{1,2}
Экранировать где то надо?

Очевидно. Ведь символы "^" и "$" обозначают начало и конец строки. Насколько я понял, контекст - mod_rewrite. В таком случае, этими символами можно пренебречь вовсе.

siv1987
На сайте с 02.04.2009
Offline
427
#7
clb:
Что то не срабатывает при таком использовании:
http://site.ru/\?id=^\d{1,2}|100$

А групировать выражение кто будет? Да и с маркерами начала и конца строки вы немного ошиблись.

\?id=(\d{1,2}|100)$

C
На сайте с 17.05.2012
Offline
69
clb
#8

что то все равно не работает.

Пробывал так

http://site.ru/\?id=(\d{1,2}|100)$

Пробывал экранировать спецсимволы

DavyJohnes
На сайте с 05.01.2011
Offline
84
#9
clb:
что то все равно не работает.
Пробывал так
http://site.ru/\?id=(\d{1,2}|100)$
Пробывал экранировать спецсимволы

Может все-таки пробОвал?

Попробуйте для начала:

http://site.ru/\?id=\d{1,2}$

Уходят ли туда

http://site.ru/?id=23

http://site.ru/?id=12
http://site.ru/?id=99
http://site.ru/?id=1

?

siv1987
На сайте с 02.04.2009
Offline
427
#10
clb:
что то все равно не работает.

Да ну? http://regexr.com/?382be

12

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий