Curso de Programación en Python/RegEx-12
Ir a la navegación
Ir a la búsqueda
Más back reference por posición
Usamos 3 back references en este ejemple. Tenemos una list de contactos, algunos sin teléfonos. Si existe un número telefono el es al inicio del registro sequido por un apellido paterno y un coma, y el/los nombres el apellido materno, si existe. Queremos presentarlo en forma: Nombre(s) apellido materno apellido paterno teléfono [rrc@Pridd ~]$ python3 Python 3.4.3 (default, Jul 1 2015, 18:38:11) [GCC 4.9.2] on linux Type "help", "copyright", "credits" or "license" for more information. >>> import re >>> >>> l = ["3331452638 Couture, Richard", ... "Garcia, Manuel Espinoza", ... "3332435264 Ortego, Luisa Elezabeth Muñoz", ... "4564756654 Herera, Alfonso Abel Garcia"] >>> >>> for i in l: ... res = re.search(r"([0-9-]*)\s*([A-Za-z]+),\s+(.*)", i) ... print(res.group(3) + " " + res.group(2) + " " + res.group(1)) ... Richard Couture 3331452638 Manuel Espinoza Garcia Luisa Elezabeth Muñoz Ortego 3332435264 Alfonso Abel Garcia Herera 4564756654 >>>