>>> re.search(r'(?P<name>[^-]+)-(?P<ver>d.d.d-d+).tar.gz', 'package_name-1.2.3-2004.tar.gz').groupdict() {'name': 'package_name', 'ver': '1.2.3-2004'}