Предположим, у меня есть номер телефона:
310-5984
Я хочу захватить все номера в номере телефона, то есть 3105984
. Я могу сделать это с двумя группами захвата:
>>> re.match(r'(?P<num_1>\d+)-(?P<num_2>\d+)', '310-5984').groupdict()
{'num_1': '310', 'num_2': '5984'}
Можно ли получить полный номер с одной группой захвата? Я пытался сделать что-то вроде:
>>> re.match(r'(?P<num>(?P<num_1>\d+)(?:-)(?P<num_2>\d+))', '310-5984').groupdict()
{'num': '310-5984', 'num_1': '310', 'num_2': '5984'}
Но он также потреблял разделитель. Как я могу «использовать» разделитель, но не захватывать его в группе? Или это невозможно с регулярным выражением?