Регулярное выражение для строки, которая содержит только число с длиной два и один пробел между ними - PullRequest
0 голосов
/ 16 января 2019

Я работаю над проверкой входных данных и мне нужно регулярное выражение, которое принимает только число с максимальной длиной 2 и одним пробелом между ними.

Regex для Python

import re

pattern="^[0-9_ ]{2}$"

check="01 03"

a=re.match(pattern,check)
if a == None:
    print'Not valid value'
else:
    print"valid value"

вывод, который я получаю, является недопустимым значением, что я тут делаю не так

1 Ответ

0 голосов
/ 16 января 2019

Вы повторяете набор символов с {2}, который будет точно соответствовать двум из предыдущего токена. Соответствие будет только в том случае, если строка содержит ровно два символа.

Вместо этого используйте набор символов [0-9]{1,2}, чтобы сопоставить одну или две цифры, затем пробел, а затем повторный набор символов:

[0-9]{1,2} [0-9]{1,2}$
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...