Как сопоставить числа больше 2048 с регулярным выражением - PullRequest
0 голосов
/ 26 июня 2019

Мне нужно сопоставить числа больше чем: 1. 2048 2. 32768

Мое текущее регулярное выражение для 2048:

([2-9][0-9][4-9][8-9]|[1-9]\d{4,}|[3-9]\d{3,})

Но это не соответствует 2077. Помогите мне здесь. Также я не могу написать регулярное выражение для чисел больше 32768.

1 Ответ

2 голосов
/ 26 июня 2019

Вот как систематически построить регулярное выражение для 2048 года (я думаю, что вы имеете в виду больше или равно, а не просто больше):

  • все числа с 5 или более цифрами:
    [1-9]\d{4}
  • все 4-значные числа, по крайней мере, с 3 на первом месте:
    [3-9]\d{3}
  • a 2, за которым следует трехзначное число, большее или равное 048 (регулярное выражение из трехзначного числа строится с использованием того же подхода):
    2([1-9]\d{2}|0([5-9]\d|4[89]))

Таким образом, полное выражение для> = 2048 [1-9]\d{4}|[3-9]\d{3}|2([1-9]\d{2}|0([5-9]\d|4[89])).

Регулярное выражение для 32768 может быть построено аналогично.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...