Regex, захватить 4 числа в окружении.или начало / конец строки - PullRequest
2 голосов
/ 26 апреля 2019

Я пытаюсь захватить любые 1-2-значные числа, заключенные в '.'или начало / конец строки.

EG

  • 1.0.4.11

  • 71.11.11.11

  • 0.11.0.0

Действительны и:

  • 1.
  • 1111
  • 11.11.11.
  • 01.10

недействительны

В настоящее время у меня есть (?<=\.|^)\d{1,2}]?(?=\.|$), который будет правильно захватывать числа, но также и группынапример, 11 .. или 1.11.

Мне нужно расширить это регулярное выражение, чтобы в основном убедиться, что оно всегда в формате xxxx, где x равно 1-2 цифрам.

Для получения дополнительной информацииregex будет работать с использованием класса rexx wxWidgets, но я считаю, что это стандартный синтаксический анализатор regex.

NOTE

Для тех, кто использует это как ссылку ... Используя wxWidgets, wxRegexкласс должен быть создан с флагом wxRE_ADVANCED, так как по умолчанию он использует базовую / быструю реализацию, которая не включает квантификаторы (? *), которые используются в этом выражении.

1 Ответ

5 голосов
/ 26 апреля 2019

Вы можете сделать его менее универсальным, специально посмотрев 4 группы между началом и концом строки (вы можете удалить \.?, если у вас никогда не было . в начале или конце):

^\.?\d{1,2}\.\d{1,2}\.\d{1,2}\.\d{1,2}\.?$

См. В Regex101

...