Привет У меня есть регулярное выражение, что я использую условие OR (|), чтобы соответствовать, потому что у меня есть несколько сценариев.
Я хочу сгруппировать только соответствующее условие, но .groups () возвращает всю группировку шаблона.
s = ' (123) 456-7890 '
pattern = re.compile(r'''^\s*[(](\d{3})[)][ ]*(\d{3})[- ]?(\d{4})\s*$|^\s*(\d{3})[-][ ]*(\d{3})[- ]?
(\d{4})\s*$|^(\d{3})(\d{3})(\d{4})\s*$''',re.VERBOSE)
match = pattern.match(s)
match.groups()
Результат будет
('123', '456', '7890', None, None, None, None, None, None)
Мне нужно, чтобы он был просто
('123', '456', '7890')