No tienes acceso a esta clase

隆Contin煤a aprendiendo! 脷nete y comienza a potenciar tu carrera

Nombres(?) Reto

18/29
Recursos

Aportes 231

Preguntas 5

Ordenar por:

驴Quieres ver m谩s aportes, preguntas y respuestas de la comunidad?

Luego llega Elon Musk colocandole a su hijo 鈥淴 脝 A-12鈥 y los gringos que hacen este mismo tipo de ejercicios con cara de:

Les dejo unos nombres para que se diviertan:
https://regex101.com/r/aPrEJH/1/
.
Camilo Sarmiento G谩lvez
Alejandro Pliego Abasto
Milagros Reyes Jap贸n
Samuel Par铆s Arrabal
Juan Pablo Tafalla
Axel G谩lvez Vel谩zquez
脫scar Montreal Aparicio
Jacobo Pozo Tassis
Guillermo Ord贸帽ez Espiga
Eduardo Pousa Curbelo
Ivanna Bienvenida Kevin
Ada Tasis L贸pez
Luciana S谩enz Garc铆a
Florencia Sainz M谩rquz
Catarina Cazalla Lombarda
Paloma Gallo Perro
Margarita Quesada Florez
Vicente Fox Quesada
Iris Graciani
Asunci贸n Carballar
Constanza Mu帽oz
Manuel Andres Garc铆a M谩rquez

Soluci贸n: ^([A-脷][a-煤]+\s?){1,5}$

  • Pedro Mu帽oz
  • Deyanira Molina
  • Brayatan Byron
  • Marantoni N煤帽ez
  • Jenny Cort茅s
  • Ad9 hastra
  • Beethoven
  • J S Mastropiero
  • 脡ster Cervantes
^[A-Z脕脡脥脫脷][a-z谩茅铆贸煤]{2,}\s[A-Z脕脡脥脫脷脩][a-z谩茅铆贸煤帽]{2,}$

PD: Soy de Chile, ac谩 los nombres imposibles existen.

Por si resulta 煤til, comparto un apunte con otro caso de uso de las expresiones que me ha parecido interesante.
Se trata de utilizar complementos del navegador para buscar dentro de p谩ginas web utilizando expresiones regulares. Dej贸 aqu铆 el enlace a uno de ellos: Chrome Regex Search
Se puede probar su funcionamiento buscando por el t茅rmino expresiones regulares en Google y utilizando despu茅s esta expresi贸n para buscar con el add-on instalado:

[E|e]xpresi[o?贸?]{1}n(es)?\s([R|e]egular)\1?

As铆 quedar谩 resaltado el singular/plural de todas las apariciones del t茅rmino Expresi贸n Regular en la p谩gina de resultados o las web consultadas.

^([A-Z脕脡脥脫脷脩]+[\w.]+ )+([A-Z脕脡脥脫脷脩]+[\w.]+)$

No he usado \s porque incluye los saltos de l铆nea, as铆 que he puesto un espacio al final del primer par茅ntesis.
Mi soluci贸n incluye todos estos posibles nombres (recopilados de los posteos de los compa帽eros):

Camilo Sarmiento G谩lvez
Alejandro Pliego Abasto
Milagros Reyes Jap贸n
Samuel Par铆s Arrabal
Juan Pablo Tafalla
Axel G谩lvez Vel谩zquez
脫scar Montreal Aparicio
Jacobo Pozo Tassis
Guillermo Ord贸帽ez Espiga
Eduardo Pousa Curbelo
Ivanna Bienvenida Kevin
Ada Tasis L贸pez
Luciana S谩enz Garc铆a
Florencia Sainz M谩rquz
Catarina Cazalla Lombarda
Paloma Gallo Perro
Margarita Quesada Florez
Vicente Fox Quesada
Asunci贸n Carballar
Constanza Mu帽oz
Manuel Andres Garc铆a M谩rquez
Iris Graciani
Miguel Ignacio Rodr铆guez 脕lvarez
Heli Miguel Robles 脕lvarez
Ver贸nika S谩nchez Asc贸n
Jhony Ulloa Montalva
Mijahil Barra Li
Kevin David Salda帽a Perez
Josie Nathaly Calle Valdiviezo
Paul Thomas Vargas Dom铆nguez
Rodrigo Jim茅nez Guti茅rrez
Jhon Beltr谩n
Jhon Fredy Beltr谩n
Jhon Fredy Beltr谩n Le贸n
脕ndres Alberto
Juan Carlos Herrera Mart铆nez
Andr茅s de Jes煤s Montes Rodr铆guez
Thais Armada de Medina
Mar铆a Julia Herrera de Perez
Xi Ping Lu
Jhonnie B. Good Jr
Adriana Villalobos F.

Y no toma ni una l铆nea de ejercicios pasados (dominios, mails, etc)

Pueden generar 10 nombres aleatorios latinos ac谩 https://www.fantasynamegenerators.com/hispanic_names.php

Resumen / Apuntes / Notas

Dejo algunos 馃憠 apuntes en GitHub 鉁 donde encontrar谩s ejemplos para entender las expresiones regulares sin tanto l铆o.

Si buscaramos el nombre de Musk

^[A-Z]\s?[脝]\s?[A-Za-z]{1,}[-]{1,}[0-9]{1,}\s?Musk

X 脝 A-12 Musk

El nombre del hijo de Elon Musk rompio paradigmas de las expresiones regulares =D

^([A-Z脕脡脥脫脷脩][a-zz谩茅铆贸煤帽]{1,}\s?){1,}

Mi solucion

^([A-脷a-煤]+\s?){2,}$

Alguien que me diga una expresion regular para encontrar un conjunto de palabras que empieza con una palabra y que termina en otra, alguien please?

Reto:
Para el siguiente conjunto de datos:
Ruben
Juan Pablo
Marcela
Anny
Camila
Rodrigo
Kevin Z
ert123
Ana Maria Gonzales
E3422

^[A-Z][a-z].+\s?

Me funcion贸 este expresi贸n ^[a-z谩茅铆贸煤帽]{3,}\s[a-z谩茅铆贸煤帽]{3,}\s[a-z谩茅铆贸煤帽]{3,}$

A mi me funciono esta, sin embargo, asumi que no hab铆a tildes.

^[A-Z][a-z]{2,}+\s[A-Z]?[\.a-z]?.*$

Feliz d铆a.

Luciana Rodr铆guez Castro
Santiago Mart铆nez Guti茅rrez
Salom茅 Gonz谩lez Vargas
Mat铆as Garc铆a Ort铆z
Isabella L贸pez Moreno
Samuel G贸mez Jim茅nez
Mariana Hern谩ndez Rojas
Jer贸nimo P茅rez Mu帽oz
Gabriela S谩nchez Torres
Emmanuel D铆az Ram铆rez
Mariangel Ram铆rez D铆az
Emiliano Torres S谩nchez
Valentina Mu帽oz P茅rez
Maximiliano Rojas Hern谩ndez
Antonella Jim茅nez G贸mez
Mathias Moreno L贸pez
Samantha Ort铆z Garc铆a
Sebasti谩n Vargas Gonz谩lez
Valeria Guti茅rrez Mart铆nez
Mart铆n Castro Rodr铆guez
Mar铆a Jos茅 Rodr铆guez Castro
Dulce Mar铆a Mart铆nez Guti茅rrez
Sara Sof铆a Gonz谩lez Vargas
Luisa Fernanda Garc铆a Ort铆z
Sara Valentina
Mar铆a Fernanda Garc铆a Ort铆z
Ana Sof铆a Garc铆a Ort铆z
Ana Luc铆a Gonz谩lez Vargas
Mar铆a Camila Ort铆z Garc铆a
Mar铆a Alejandra Ram铆rez D铆az
Juan Jos茅 Vargas Gonz谩lez
Miguel Angel Mu帽oz P茅rez
Juan Sebasti谩n Ram铆rez D铆az
Juan David D铆az Ram铆rez
Samuel David Vargas Gonz谩lez
Juan Pablo L贸pez Moreno
Andr茅s Felipe Mu帽oz P茅rez
Juan Esteban Garc铆a Ort铆z
Juan Diego Mu帽oz P茅rez
Angel David L贸pez Moreno
Ef3afga Easfgeas Eefe Enfle
脡f3afga Easfgeas Eefe Enfle
^[A-Z][a-z谩-煤]{2,}\s?[A-Z]?[a-z谩-煤]{2,}\s?[A-Z]?[a-z谩-煤]{2,}\s?[A-Z]?[a-z谩-煤]{2,}$
**Mi soluci贸n al reto:** ![](https://static.platzi.com/media/user_upload/image-df6dc41d-6b17-4707-8bc6-f2146364e6c5.jpg) ![]() `^[A-Z][a-z]{2,}\s?[A-Z][a-z]{2,}\s?[\Da-z]*$`
**Mi soluci贸n del reto** ```js ^[A-Z][a-z]{2,}\s?[A-Z][a-z]{2,}\s?[\Da-z]*$ ```![](https://static.platzi.com/media/user_upload/image-f771ffab-dda5-4df9-beb4-401330a67b8a.jpg)
^(\[A-Z脕-脷]\[a-z谩-煤]\*\s?){2,4}$
Para los siguientes 5 casos: Rodrigo Jimenez Gutierrez Andres Garcia Duarte Luz del Carmen Chavez Perez Canelo de San Alvarez MacGregor Julian Alejandro Rodante Juez (\[A-Z]\[a-z]{1,}\s\*(\[a-z]\*)?(\[A-Z]\[a-z]\*)?\s\*){2,}
En esta respuesta que dare a continuacion esta debido a que en colombia pueden ocurrir que los nombres hayan dos o 1 nombre, dos o 1 apellido, entones es mas variado por ese caso. ^\[A-z]\[a-z]{2,}\s?\[A-z]\[a-z]{2,}\s?\[A-z]\[a-z]{2,}\s?\[\w{2,}]?\s?\[A-z]+\s?\w\*$
Para nombres con acento al empezar y despu茅s de la primera letra al empezar, nombre con dos apellidos, dos nombres y dos apellidos, as铆 seria mi expresi贸n regular (regex): Camilo Sarmiento G谩lvez Alejandro Pliego Abasto Milagros Reyes Jap贸n Samuel Par铆s Arrabal Manuel Andres Garc铆a M谩rquez Axel G谩lvez Vel谩zquez 脫scar Montreal Aparicio ^\[A-Z脕-脷]\[a-z谩-煤]{2,}\s?\[A-Z]?\[a-z谩-煤]{0,}\s?\[A-Z脕-脷]?\[a-z谩-煤]{0,}\s?\[A-Z脕-脷]?\[a-z谩-煤]{0,} not茅se que coloco acentuada en may煤scula de la 脕-脷 y en min煤sculas de 谩-煤.
donde se le sube la dificultad a los bots \[A-Z脌-煤]\[a-z脌-煤]{2,}\s\[A-Z脌-煤]\[a-z脌-煤]{2,} ![](https://static.platzi.com/media/user_upload/imagen-d72e3c88-5cc5-491b-82c0-aa66f218d4ad.jpg)

Mi propuesta para nombres 鈥渕exicanos鈥:

^([A-Z脕-脷]([a-z谩-煤]?){1,}\s?\N){1,}$

Camilo Sarmiento G谩lvez
Alejandro Pliego Abasto
Milagros Reyes Jap贸n
Samuel Par铆s Arrabal
Juan Pablo Tafalla
Axel G谩lvez Vel谩zquez
脫scar Montreal Aparicio
Jacobo Pozo Tassis
Guillermo Ord贸帽ez Espiga
Eduardo Pousa Curbelo
Ivanna Bienvenida Kevin
Ada Tasis L贸pez
Luci1ana S谩enz Garc铆a
Florencia Sainz M谩rquz
Catarina Cazalla Lombarda
Paloma Gallo Perro
Margarita Quesada Florez
Vicente Fox Quesada
Iris Graciani
Asunci贸n Carballar
Constanza Mu帽oz
Manuel Andres Garc铆a M谩rquez
脩o帽o Alberto Galv谩n
alberto Reyes 脩u帽a
Albeto Rangel帽 peralta
A Alberta
C Galpdoa

Ruben
Jhon鈥檚
ag眉ero
Juan Pablo
Marcela
Jos茅
Anny
Camila
Rodrigo
rodrigo
Kevin Z
kevin Z
ert123
Ana Maria Gonzales
E3422
4E3422

^([A-Za-z]\S?\s?){2,50}$

鉁 Filtrando Nombres y Apellidos

Usando JavaScript se filtran los nombres y apellidos de los usuarios teniendo en cuenta obviar los molestos saltos de l铆nea \n.

const text = `
Camilo Sarmiento G谩lvez
Alejandro Pliego Abasto
Milagros Reyes Jap贸n
Samuel Par铆s Arrabal
Juan Pablo Tafalla
Axel G谩lvez Vel谩zquez
脫scar Montreal Aparicio
Jacobo Pozo Tassis
Guillermo Ord贸帽ez Espiga
Eduardo Pousa Curbelo
Ivanna Bienvenida Kevin
Ada Tasis L贸pez
Luciana S谩enz Garc铆a
Florencia Sainz M谩rquz
Catarina Cazalla Lombarda
Paloma Gallo Perro
Margarita Quesada Florez
Vicente Fox Quesada
Iris Graciani
Asunci贸n Carballar
Constanza Mu帽oz
Manu茅l Andres Garc铆a M谩rquez
`;
/* 
// Primera versi贸n: 
const regex =
  /^[A-Za-z脌-每]+\s?[A-Za-z脌-每]+[\S? ]([A-Za-z脌-每]+)?[\S? ]([A-Za-z脌-每]+)/gm; 
*/
// Versi贸n final: 
const regex = /([A-Za-z脌-每]+[\S? ?]?){1,4}/gm;
console.log(text.match(regex));

Obtenemos:

[
  'Camilo Sarmiento G谩lvez',
  'Alejandro Pliego Abasto',
  'Milagros Reyes Jap贸n',
  'Samuel Par铆s Arrabal',
  'Juan Pablo Tafalla',
  'Axel G谩lvez Vel谩zquez',
  '脫scar Montreal Aparicio',
  'Jacobo Pozo Tassis',
  'Guillermo Ord贸帽ez Espiga',
  'Eduardo Pousa Curbelo',
  'Ivanna Bienvenida Kevin',
  'Ada Tasis L贸pez',
  'Luciana S谩enz Garc铆a',
  'Florencia Sainz M谩rquz',
  'Catarina Cazalla Lombarda',
  'Paloma Gallo Perro',
  'Margarita Quesada Florez',
  'Vicente Fox Quesada',
  'Iris Graciani',
  'Asunci贸n Carballar',
  'Constanza Mu帽oz',
  'Manu茅l Andres Garc铆a M谩rquez'
]

Suponiendo que tiene una lista de nombres como la que pasaron en otro comentario.

Camilo Sarmiento G谩lvez
Alejandro Pliego Abasto
Milagros Reyes Jap贸n
Samuel Par铆s Arrabal
Juan Pablo Tafalla
Axel G谩lvez Vel谩zquez
脫scar Montreal Aparicio
Jacobo Pozo Tassis
Guillermo Ord贸帽ez Espiga
Eduardo Pousa Curbelo
Ivanna Bienvenida Kevin
Ada Tasis L贸pez
Luciana S谩enz Garc铆a
Florencia Sainz M谩rquz
Catarina Cazalla Lombarda
Paloma Gallo Perro
Margarita Quesada Florez
Vicente Fox Quesada
Iris Graciani
Asunci贸n Carballar
Constanza Mu帽oz
Manuel Andr茅s Garc铆a M谩rquez
Oscar Barajas Tavares
Juan P茅rez

Habr铆a que cambiar en los contadores que empiece con 1 hacia infinito o usar el operador 鈥+鈥 para que te tome por ejemplo el nombre 鈥淐ayetano R茅鈥

^([A-Z||||||脩]+[a-z||||||帽]{2,}[\s]?)+$

Mi soluci贸n:
^([A-Z][a-z]\s?)$

Pd: aun no pude incluir aquellos con guiones

Tengo un primo cuyo nombre tiene 2 letras, entonces 茅sta ser铆a mi respuesta:

^([A-z脕-煤]\s?){1,}[A-z脕-煤]$ 

Para validar nombres se puede definir una expresi贸n regular que primero detecte la primera letra como una mayuscula y luego el resto como minuscula m谩s un espacio que pueda o no existir. De la siguiente manera: ^([A-Z\u00C0-\u017F][a-z\u00C0-\u017F]+\s?){1,4}$ Adem谩s los caract茅res \u00C0-\u017F identifican los acentos.

Para que la expresi贸n regular pueda encontrar los caract茅res con acento se puede usar lo siguiente: \u00C0-\u017F de manera que se coloque dentro de la clase: [A-Z\u00C0-\u017F] o [a-z\u00C0-\u017F]

.
.
馃毀馃毀***SPOILER***馃毀馃毀
.
.
As铆 lo hice
.
.

^([A-Z][a-z]* ){1,}[A-Z][a-z]*$

Soluci贸n al reto

Para estos nombres:

Ruben
Juan Pablo
Marcela
Anny
Camila
Rodrigo
Kevin Z
ert123
Ana Maria Gonzales
E3422

Use esta expresi贸n regular ^([a-zA-Z]+\s?(\d*)?){1,}$ 馃榿

Para los siguientes nombres:

Juan Fernando P茅rez del Corral
Valentina Laverde de la Rosa
脫scar de la Renta
Sara Teresa S谩nchez del Pinar
Efra铆n de las Casas Mej铆a
Julieta Ponce de Le贸n
Mart铆n El铆as de los R铆os Acosta
Gabriela de la Pava de la Torre
Matas de Greiff Rinc贸n
Manuela del Pino Hincapi茅
Sebasti谩n del Campo Yepes
Sof铆a del R铆o Arango
Ana Mar铆a de la Pe帽a Posada
M贸nica Patricia de 脕valos Mendoza
oscar gutierrez
carlos45

use:

^[A-Z脕脡脥脫脷脩][a-z谩茅铆贸煤帽].+[A-Z脕脡脥脫脷脩][a-z谩茅铆贸煤帽].*$

con el resultado:

Compilando los nombres y apellidos que gentilmente han puesto en este chat, presento mi soluci贸n (parcial lamento yo), aqu铆 lo tienen al final de la lista.

Ada Tasis L贸pez
Adriana Villalobos F.
Alejandro Pliego Abasto
脕ndres Alberto
Andr茅s de Jes煤s Montes Rodr铆guez
Asunci贸n Carballar
Axel G谩lvez Vel谩zquez
Camilo Sarmiento G谩lvez
Catarina Cazalla Lombarda
Constanza Mu帽oz
Eduardo Pousa Curbelo
Florencia Sainz M谩rquz
Guillermo Ord贸帽ez Espiga
Heli Miguel Robles 脕lvarez
Iris Graciani
Ivanna Bienvenida Kevin
Jacobo Pozo Tassis
Jhon Beltr谩n
Jhon Fredy Beltr谩n Le贸n
Jhonnie B. Good Jr
Jhony Ulloa Montalva
Josie Nathaly Calle Valdiviezo
Juan Carlos Herrera Mart铆nez
Juan Pablo Tafalla
Kevin David Salda帽a Perez
Luciana S谩enz Garc铆a
Manuel Andres Garc铆a M谩rquez
Margarita Quesada Florez
Mar铆a Julia Herrera de Perez
Miguel Ignacio Rodr铆guez 脕lvarez
Mijahil Barra Li
Milagros Reyes Jap贸n
脫scar Montreal Aparicio
Paloma Gallo Perro
Paul Thomas Vargas Dom铆nguez
Rodrigo Jim茅nez Guti茅rrez
Samuel Par铆s Arrabal
Thais Armada de Medina
Ver贸nika S谩nchez Asc贸n
Vicente Fox Quesada
Xi Ping Lu

^([a-z谩-煤A-Z脕-脷]{2,} ?)+(([A-Z].)+)? : Selecciona todos los nombres, menos 鈥楯honnie B. Good Jr鈥 que lo hace desde 鈥楯鈥 hasta 鈥楤.鈥

Aqu铆 te proporciono otra expresi贸n regular para validar nombres de personas, en este caso, permitiendo tambi茅n la presencia de apellidos compuestos y caracteres acentuados.

import re
nombres_regex = r'^[A-Za-z谩茅铆贸煤脕脡脥脫脷帽脩]+([\s-][A-Za-z谩茅铆贸煤脕脡脥脫脷帽脩]+)*$'

nombre1 = "Juan P茅rez G贸mez"
nombre2 = "Mar铆a De La Cruz Gonz谩lez-Ruiz"
nombre3 = "Jos茅 Mar铆a Vel谩zquez"

if re.match(nombres_regex, nombre1):
    print("El nombre 1 es v谩lido")

if re.match(nombres_regex, nombre2):
    print("El nombre 2 es v谩lido")

if re.match(nombres_regex, nombre3):
    print("El nombre 3 es v谩lido")

La expresi贸n regular busca cadenas que coincidan con el siguiente patr贸n:

  • La cadena comienza con una o m谩s letras, incluyendo caracteres acentuados y la letra 帽 ([A-Za-z谩茅铆贸煤脕脡脥脫脷帽脩]).

  • Luego, pueden aparecer cero o m谩s repeticiones de un espacio en blanco (\s) o un gui贸n (-) seguido de una o m谩s letras ([A-Za-z谩茅铆贸煤脕脡脥脫脷帽脩]).

  • La expresi贸n regular utiliza par茅ntesis () y el operador asterisco (*) para indicar que el patr贸n dentro de los par茅ntesis puede aparecer cero o m谩s veces.

Esta expresi贸n regular valida nombres que contienen letras, espacios en blanco, guiones y caracteres acentuados, permitiendo la presencia de apellidos compuestos. Si la cadena coincide con este patr贸n, se considera que el nombre es v谩lido.

Solucion al reto usando VSCode:
^[A-Z][a-z]{1,}\s[A-Z][a-z]{1,}$
nota: Los nombres usados por su sevilleta no llevan acento

mi soluci贸n la cual creo abarcar铆a una gran cantidad de nombres en espa帽ol ya que tambi茅n cuenta con todos los caracteres especiales

^([A-Z脕脡脥脫脷][a-z谩茅铆贸煤帽]{2,}\s?){2,4}$

驴C贸mo voy? 馃

^[A-Z][a-z谩茅铆贸]{2,}\s[A-Z][a-z谩茅铆贸]\s?[A-Za-z谩茅铆贸]{0,}(\s?[A-Z]?[a-z谩茅铆贸]{0,}){0,8}

Mi intento de resolver el Reto:

Expresion regular para Nombre:
^([a-zA-Z谩茅铆贸煤脕脡脥脫脷脩帽] ?)+$
sin acentos:
^(\w{1,} ?)+$
^([a-zA-Z] ?)+$

Comparto mi soluci贸n al reto

^([A-Z脕脡脥脫脷脩][a-z谩茅铆贸煤帽]+ ?){2,4}$

Los nombres no pueden tener digito

El muchacho de Colombia llamado 6 aparece

El profesor: 馃檱鈥嶁檪锔忦煓団嶁檪锔忦煓団嶁檪锔

Hola! Dejo mi soluci贸n. Funciono todo como queria, pero quedo un chorizo largu铆simo al incluir la 帽, los acentos y los dem谩s signos en las letras.
^[A-Z脛脣脧脰脺脕脡脥脫脷脗脢脦脭脹脌脠脤脪脵]{1,1}[a-z帽盲毛茂枚眉谩茅铆贸煤谩茅铆贸煤芒锚卯么没脿猫矛貌霉]{2,11}\s[A-Z脛脣脧脰脺脕脡脥脫脷脗脢脦脭脹脌脠脤脪脵]{1,1}[a-z帽盲毛茂枚眉谩茅铆贸煤谩茅铆贸煤芒锚卯么没脿猫矛貌霉]{2,11}(\s[A-Z脛脣脧脰脺脕脡脥脫脷脗脢脦脭脹脌脠脤脪脵]{1,1}[a-z帽盲毛茂枚眉谩茅铆贸煤谩茅铆贸煤芒锚卯么没脿猫矛貌霉]{2,11})?(\s[A-Z脛脣脧脰脺脕脡脥脫脷脗脢脦脭脹脌脠脤脪脵]{1,1}[a-z帽盲毛茂枚眉谩茅铆贸煤谩茅铆贸煤芒锚卯么没脿猫矛貌霉]{2,11})?$

^([A-Z脕-脷][a-z谩-煤])\s([A-Z脕-脷][a-z谩-煤])\s?([A-Z脕-脷][a-z谩-煤]+)?\s?([A-Z脕-脷][a-z谩-煤]+)?$

Mi soluci贸n:

^([A-Z脕-脷][a-z谩-煤]{2,}\s?){2,}$
^([A-Z][a-z][A-Z]?[a-z]+ ?){1,2}

Mi soluci贸n: ^([A-Z脌-煤a-z]+ ?){2,4}$

Para nombres Colombianos, lo hice de esta manera
^([A-Z脕-脷][a-z谩-煤]{1,}\s?){1,4}

Nombres:

Camilo Sarmiento G谩lvez
Alejandro Pliego Abasto
Milagros Reyes Jap贸n
Samuel Par铆s Arrabal
Juan Pablo Tafalla
Axel G谩lvez Vel谩zquez
脫scar Montreal Aparicio
Jacobo Pozo Tassis

Mi Solucion:

([A-Z脕-脷][a-z谩-煤]{3,}\s?){3,3}

Mi soluci贸n: ^[A-Z脫][a-z贸]{2,} ?[A-Z][a-z贸铆帽谩]{2,} ?[A-Z][a-z贸铆帽谩]* ?[A-Z][a-z贸铆帽谩]*$

Mi soluci贸n

^([A-Z][a-z谩]{1,}\s?){2,}.*$
^([A-Z脌-煤][a-z脌-煤]{2,}\s?){2,4}

Mi salio algo complejo:
^([a-zA-Z脕脡脥脫脷脩谩贸煤帽铆茅]+[\w.]+\D ?)+([a-zA-Z脕脡脥脫脷脩谩贸煤帽铆茅]+[\w.]+\D)$

^([A-Z脕脡脥脫脷脩][a-z谩茅铆贸煤帽]{2,25}\s?){1,6}$

Reto cumplido, solo agregue las tildes de las vocales y el resto era casi igual a lo que hizo el profe.
![](

Est谩 es mi soluci贸n:

^([A-脷][a-煤]+\s)+$

Mi soluci贸n

^[A-Z脫脕脡脥脷][a-z谩茅铆贸煤帽]{2,}((\s[A-Z脕脡脥脫脷][a-z谩茅铆贸煤帽]{2,}){1,3})?$

pero viendo los comentarios de los compa帽eros aprend铆 que el rango de a-煤 incluye tildes y la 帽 ,
Soluci贸n mejorada

^[A-脷][a-煤]{2,}((\s[A-脷][a-煤]{2,}){1,3})?$

En un entorno real de python es un poco mas complicado el ejercicio, mas o menos habia dado con una solucion pero que igualmente contenia fallas, ya que los nombres los toma de una manera muy rara ver resultado final:

Camilo Sarmiento G脙
lvez
Alejandro Pliego Abasto
Milagros Reyes Jap脙鲁n
Samuel Par脙颅s Arrabal
Juan Pablo Tafalla
Axel G脙
lvez Vel脙
zquez
脙鈥scar Montreal Aparicio
Jacobo Pozo Tassis
Guillermo Ord脙鲁脙卤ez Espiga
Eduardo Pousa Curbelo
Ivanna Bienvenida Kevin
Ada Tasis L脙鲁pez
Luciana S脙
enz Garc脙颅a
Florencia Sainz M脙
rquz
Catarina Cazalla Lombarda
Paloma Gallo Perro
Margarita Quesada Florez
Vicente Fox Quesada
Iris Graciani
Asunci脙鲁n Carballar
Constanza Mu脙卤oz
Manuel Andres Garc脙颅a M脙
rquez

Igualmente buscando resolucion a esto ya que habia nombres que no los tomaba se procedio a adaptar una solucion de stackoverflow, y la misma funciono relativamente bien:

import re

fh = open(r"C:\Users\Alfonso Zapata\jupyter\Cursos\Junio 2022\Curso de expresiones regulares - platzi\REGEX-master\liners.txt", "r").read()

fh

for line in re.findall(r"([A-Z脕-脷脩][^\n0-9_!隆?梅?驴/\\+=@#$%藛&*(){}|~<>;:[\]]{3,})\s([A-Z脕-脷脩][^\n0-9_!隆?梅?驴/\\+=@#$%藛&*(){}|~<>;:[\]]{3,})\s([A-Z脕-脷脩][^\n0-9_!隆?梅?驴/\\+=@#$%藛&*(){}|~<>;:[\]]{3,})\s([A-Z脕-脷脩][^\n0-9_!隆?梅?驴/\\+=@#$%藛&*(){}|~<>;:[\]]{3,})", fh):
    print(line)

Anexo capture de jupyterlabs

Les comparto la expresi贸n que me sirvi贸 para completar el reto de los nombres:

^\D[A-Za-z脕-脷谩-煤]+?.*

Cualquier observaci贸n es bienvenida. 馃槂

Mi soluci贸n al reto

^([A-Z脕脡脥脫脷][a-z谩茅铆贸煤]+ [A-Z脕脡脥脫脷][a-z谩茅铆贸煤帽]+) ? ([A-Z脕脡脥脫脷][a-z谩茅铆贸煤帽]+)?

Esta RegEx funciona para dos nombres y un apellido, pero no s茅 como hacer incluir l铆neas con solo un nombre y un apellido, o los dos nombres y los dos apellidos en una sola regex

^([A-Z脕脡脥脫脷脩][a-zz谩茅铆贸煤帽]{1,}\s?){1,}
Mi soluci贸n

Hola.

Ac谩 tengo mi aporte.

^[A-Z脕脡脥脫脷][a-z谩茅铆贸煤帽]{2,}\s[A-Z脕脡脥脫脷][a-z谩茅铆贸煤帽]{2,}(\s[A-Z脕脡脥脫脷][a-z谩茅铆贸煤帽]{2,})?(\s[A-Z脕脡脥脫脷][a-z谩茅铆贸煤帽]{2,})?

Saludos.

Esta es mi soluci贸n:

^([A-Z脕脡脥脷脫脩][a-z谩茅煤铆贸帽]{2,} ?){2,}$
^[\w\s谩茅铆贸帽]{1,}$
^([A-Z脌-煤][a-z脿-煤]+\s?)+

Mi respuesta con varias listas:

Use esta Regex y muchos nombres coincidieron

^([\w茅谩铆贸煤脕脡脥脫脷帽脩]+\s?){4,5}$

Camilo Sarmiento G谩lvez
Alejandro Pliego Abasto
Milagros Reyes Jap贸n
Samuel Par铆s Arrabal
Juan Pablo Tafalla
Axel G谩lvez Vel谩zquez
脫scar Montreal Aparicio
Jacobo Pozo Tassis
Guillermo Ord贸帽ez Espiga
Eduardo Pousa Curbelo
Ivanna Bienvenida Kevin
Ada Tasis L贸pez
Luciana S谩enz Garc铆a
Florencia Sainz M谩rquz
Catarina Cazalla Lombarda
Paloma Gallo Perro
Margarita Quesada Florez
Vicente Fox Quesada
Iris Graciani
Asunci贸n Carballar Constanza Mu帽oz
Manuel Andres Garc铆a M谩rquez
Andres 脩anco
Rodrigo Jim脙漏nez Guti脙漏rrez
Jhon Beltran
Rodrigo Jim茅nez Guti茅rrez
Jhon Fredy Beltr谩n
Jhon Fredy Beltr谩n Le贸n
脕ndres Alberto
Juan Carlos Herrera Mart铆nez
Andr茅s de Jes煤s Montes Rodr铆guez
daniel morales sevillano
daniel alejandro morales sevillano
maria de los angeles popo
Nicole dayan capote vallejo

Asi lo solciones yo:

^[A-Z脩脕脡脥脫脷][a-z帽谩茅铆贸煤]{3,}(\s?([A-Z脩脕脡脥脫脷][a-z帽谩茅铆贸煤]{0,})?){1,5}$

Mi soluci贸n para Colombia y Latinoamerica

/^([A-Z脕-脷][a-煤]{2,}\s?){2,4}$/

Aqui a la soluci贸n que llegue:

<^([A-Z脌-脷][a-z脿-煤]{2,}\s?){2,6}$> 

Solo me falta encontrar la manera que haga match con nombre compuestos como:

Mar铆a de los Angeles S谩nchez Carmona

^[A-Z脕脡脥脫脷][\w谩茅铆贸煤帽]+ - Nombres latinos

^([A-Z脕脡脥脫脷][\w谩茅铆贸煤帽]+\s?,?)+$ - Nombres separados por espacios

^.+\s?$ - Todos los nombres del mundo termina siendo cualquier string

Cosas incorrectas que los programadores asumimos acerca del nombre

Este reto es interesante para el curso, pero en la vida real para evitarse dolores de cabezas deben saber que muchas cosas que creen que son universales para los nombres son mentira y no aplican en todos los pa铆ses del mundo.

  • un nombre no tiene caracteres especiales (mentira): X 脝 A-Xii

  • Un nombre no tiene d铆gitos (mentira): Colombiano su nombre es 鈥6鈥

  • Un nombre debe tener un m铆nimo de 2 o 3 caracteres (mentira): Li (como apellido) o a煤n m谩s en su idioma original 鏉

Mientras m谩s buscamos aceptar todos los nombres universalmente posibles de todos los idiomas que existen cada vez es m谩s notorio que menos restricciones es quiz谩s la unica opci贸n que nos queda

Esta es mi respuesta.

^[A-Z脩脕脡脥脫脷][a-z帽谩茅铆贸煤]{2,20}( [A-Z脩脕脡脥脫脷][a-z帽谩茅铆贸煤]{2,20}){0,3}$

Hace match hasta con dos nombres y dos apellidos. El 煤nico problema es que tambi茅n existen apellidos o nombres con 鈥渄e鈥, o 鈥渄el鈥, 鈥渄e la鈥, etc. Si queremos considerar el nombre completo ser铆a complicado ponerlo para que encaje en las situaciones correctas. Posiblemente para casos complejos sea mejor construir la l贸gica en el lenguaje de programaci贸n, pero con expresiones regulares se puede aplicar condicionales.
A煤n no lo he hecho, pero encontr茅 la informaci贸n en regular-expresions.info. Si alguien le parece interesante puede echarle un vistazo. Tienen gu铆as en muchos aspectos de expresiones regulares adicionales a lo que se ve en este curso tambi茅n.

Mi aporte es :

^[A-Z脕脡脥脫脷脩][a-z谩茅铆贸煤帽]{2,}\s?[A-Z脕脡脥脫脷][a-z谩茅铆贸煤帽]{2,}\s?([A-Z脕脡脥脫脷脩][a-z谩茅铆贸煤帽]{2,})?

Les comparto mi c贸digo:
^[A-Z脕-脷]?[a-z谩-煤]{2,}?\s[A-Z脕-脷]?[a-z谩-煤]{2,}?\s?[A-Z脕-脷]?[a-z谩-煤]{2,}?\s?[A-Z脕-脷]?[a-z谩-煤]{1,}?\s?$
Nombres usados:
Mauricio Dev,ia Castro
Laura Valentina Cruz Oyola
Jo0an Sebastian cruz Oyola
Mercedes Lasso Devia
Andr茅s David Gaviria Tovar
Yolanda Oy9la Vargas
脕ngel G贸mez 脕ngulo
Andrea Gutierrez
Nota: El doble espacio al final no deja hacer macth.

Asi el mio

^(([A-Z脕脡脥脫脷脩][a-z谩茅铆贸煤帽眉]{2,}\s?)){1,5}$

My solution:
lista de nombres:

codigo: ^[A-Z脫][a-z贸谩]{2,}\s?[A-Z脫][a-z贸谩帽铆]{2,}\s?[A-Z脫][a-z贸谩帽铆]{2,}.+

Camilo Sarmiento G谩lvez
Alejandro Pliego Abasto
Milagros Reyes Jap贸n
Samuel Par铆s Arrabal
Juan Pablo Tafalla
Axel G谩lvez Vel谩zquez
脫scar Montreal Aparicio
Jacobo Pozo Tassis
Guillermo Ord贸帽ez Espiga
Eduardo Pousa Curbelo
Ivanna Bienvenida Kevin
Ada Tasis L贸pez
Luciana S谩enz Garc铆a
Florencia Sainz M谩rquz
Catarina Cazalla Lombarda
Paloma Gallo Perro
Margarita Quesada Florez
Vicente Fox Quesada
Iris Graciani
Asunci贸n Carballar
Constanza Mu帽oz
Manuel Andres Garc铆a M谩rquez

^[A-ZZ脕脡脥脫脷a-z谩茅铆贸煤帽]{2,}\s?[A-ZZ脕脡脥脫脷a-z谩茅铆贸煤帽]{2,}\s?[A-ZZ脕脡脥脫脷a-z谩茅铆贸煤帽]{2,}\s?[A-ZZ脕脡脥脫脷a-z谩茅铆贸煤帽]{2,}\s?[A-ZZ脕脡脥脫脷a-z谩茅铆贸煤帽]{2,}

Lo solucion茅 as铆 aunque estoy segura que se podr铆a resumir pero bueno fue divertido hacerlo sola 馃槂

Este seria para grupos de m谩ximo 2 nombres y dos apellidos

^([A-Z][a-z谩茅铆贸煤]{3,}\s?){2,4}$

Hola el mio quedo asi

^\u00f1?\u00d1?[A-z]{1,}\u00f1?[a-z]{1,}\,?\s\u00f1?\u00d1?[A-z]{1,}\u00f1?[a-z]{1,}\,?\s\u00f1?\u00d1?[A-z]{1,}\u00f1?\u00f3?[a-z]{1,}\,?\s$

la estructura permite, 帽 脩 贸, pero solo 3 veces, no encontr茅 la manera o no le entend铆 XD, para poderlo poner mas veces y no tener que copiar y pegar, tambi茅n acepta las , pero al mismo tiempo las selecciona

Comparto mi ejercicio 馃槃. Pensando en el caso de los apellidos, como lo menciona el profesor de tener la mayor probabilidad de solo obtener estos y no los nombres, se me ocurre la siguiente funci贸n:

[A-Z脌-脷][a-z脿-煤]{1,10}\s[A-Z脌-脷][a-z脿-煤]{1,10}\S$

Y en caso de solo querer tener 1 apellido, asumiendo que el usuario al menos agregar谩 un nombre y un apellido, podr铆a quedar as铆:

[A-Z脌-脷][a-z脿-煤]{1,10}\S$

De esta forma no tomamos todo el nombre, sino solo los apellidos tentativamente. Como alternativas, creo que dentro del c贸digo se podr铆a crear una condicional donde primero una regex detecte el n煤mero de palabras y dependiendo de este, se aplique una segunda regex para extraer nombres o apellidos de forma precisa. 馃槂

Aqu铆 esta mi soluci贸n
([A-Z][a-z帽]{2,}\s?){2,}

Ruben
Juan Pablo
Marcela
Rodrigo
Belen
Camila

Mi soluci贸n

([A-脩][a-帽煤贸]{0,}\s?){4}

^[谩茅铆贸煤 A-z]{3,}$

https://regexr.com/6ahlh

Expression

^([A-Z脕脡脥脫脷脺脩]([a-z谩茅铆贸煤眉帽]+)? )((de )?(del )?(la )?(el )?[A-Z脕脡脥脫脷脺脩]([a-z谩茅铆贸煤眉帽]+)? ?){1,7}$

Texto

Mar铆a de Jes煤s Macias L贸pez
Antonio Arg眉elles Roncero
Ana Maria Rios del Ba帽o
Francisco Ladr贸n de Guevara
Arantzatu Goicoetxea Urda铆z
Maria de la O

Esta Regex esta para detectar un nombre (Nombre y apellido) o 3 nombres (Nombre y 2 apellidos) o los 2 nombres y los dos apellidos.

^[A-z脕脡脥脫脷][a-z谩茅铆贸煤帽]{2,}\s[A-z脕脡脥脫脷][a-z谩茅铆贸煤帽]{2,}\s?[A-z脕脡脥脫脷]?[a-z谩茅铆贸煤帽]?\s?[A-z脕脡脥脫脷]?[a-z谩茅铆贸煤帽]?$

Funciono con todos estos

Camilo Sarmiento G谩lvez
Alejandro Pliego Abasto
Milagros Reyes Jap贸n
Samuel Par铆s Arrabal
Juan Pablo Tafalla
Axel G谩lvez Vel谩zquez
脫scar Montreal Aparicio
Jacobo Pozo Tassisf
Guillermo Ord贸帽ez Espiga
Eduardo Pousa Curbelo
Ivanna Bienvenida Kevin
Ada Tasis L贸pez
Luciana S谩enz Garc铆a
Florencia Sainz M谩rquz
Catarina Cazalla Lombarda
Paloma Gallo Perro
Margarita Quesada Florez
Vicente Fox Quesada
Iris Graciani
Asunci贸n Carballar
Constanza Mu帽oz
Manuel Andres Garc铆a M谩rquez

Buena tarde amigos!

les dejo mi solucion, vi por ahi una en los comentarios que mediante codificacion UTF-* simplificaba los acentos, pero a mi gusto eso pierde legibilidad, de por si una expresion regular no es algo que se pueda leer tan sencillo y luego complicando su lectura.

Recordemos que reducir el codigo tiene que ir de la mano con la legibilidad!

^([A-z脩脕脡脥脫脷帽谩茅铆贸煤]{2,}[ ])+[A-z脩脕脡脥脫脷帽谩茅铆贸煤 ]+$

Mi soluci贸n al reto de los nombres:

^[A-Z][a-z]{1,}(\s[A-Z][a-z]{1,})?(\s([a-z]{2,2}\s)?[A-Z][a-z]{1,})+$

Ejemplos de nombres v谩lidos:

  • Ruben Blades
  • Juan Pablo Marmol
  • Camila Cabello
  • Gregorio Araoz de Lamadrid Fernandez
  • Gregorio Araoz Fernandez de Lamadrid
  • Juan Manuel Abal Medina
  • Zu Tamagotchi
  • Jorge Salvador Fernandez Lopez Gutierrez
  • Ajo Derse

Ejemplos de nombres NO v谩lidos:

  • Marcela agachate
  • Rodrigo noya
  • belen Francese
  • Jorge
  • Leandro N Alem
  • A Joderse

Me agrado como me quedo asi para mexico:

^([A-Z]?[谩脕-煤脷aA-zZ]{3,} ?){1,6}$

Un 6 al final solo como gesto de que salga alguien raro con varios nombres jaja

Oscar Andr茅s Ramos L贸pez
Paula Andrea Nu帽ez Giraldo
Sebastian Ramos Nu帽ez
Marco Aureliio Ramos Gomez
Juan Pablo Vaquez
aura Sepulveda Cortez
Maria Paz Ramos

^(([A-Z脕脡脥脫脷脩][a-z谩茅铆贸煤帽]{2,}) +)+([A-Z脕脡脥脫脷脩][a-z谩茅铆贸帽]{2,})$

驴Qu猫 tal chicos? 驴c貌mo van? Deseaba hacer un aporte a los relativamente nuevos en el manejo de editores de c贸digo; Resulta que Visual Studio en la b煤squeda de caracteres tiene las opciones de expresiones regulares y otras 2 m谩s, de vez en cuando descarta** la opci贸n 鈥淎a鈥**, la cual es primordial para realizar nuestras b煤squedas con Regex, ya que si no est谩 activa, Visual prescindir铆a del reconocimiento de May煤sculas o min煤sculas.

Esta un poco larga

[A-Z脩脕脡脥脫脷]{1}[a-z帽谩茅铆贸煤]{1,}\s([a-z]{1,3}\s)?([A-Z脩脕脡脥脫脷]{1}\.\s)?([A-Z脩脕脡脥脫脷]{1}[a-z帽谩茅铆贸煤]{1,}\s)?[A-Z脩脕脡脥脫脷]{1}([a-z]{1}[A-Z脩脕脡脥脫脷]{1})?[a-z帽谩茅铆贸煤]{1,}\s?([A-Z脩脕脡脥脫脷]{1}[a-z}{1]\.\s|[A-Z脩脕脡脥脫脷]{1}\.\s)?([A-Z脩脕脡脥脫脷]{1}[a-z帽谩茅铆贸煤]{1,})?

Funciona para:
Andr茅s de Jes煤s Montes Rodr铆guez
Porter Jos茅 Mckenzie Rios
Elmo R. Oneill R.
Maria del C. Montes
Maria del C. Montes Rios
Porter Jos茅 Mckenzie R.
Porter J. Mckenzie R.

Me funciono con esta

^([A-Z]{1}[a-z谩茅铆贸煤]+)\s?+([A-Z]{1}[a-z谩茅铆贸煤]+)$

Mi soluci贸n es algo larga 馃槄馃槄鈥 pero lo hace bastante bien 馃槑
Mi soluci贸n:

^[A-z谩茅铆贸煤帽脕脡脥脫脷]{1,1}[a-z谩茅铆贸煤帽]{2,12}\s([A-z]{1,1})+([a-z谩茅铆贸煤帽]{2,12})?\s?([A-z]{1,1}[a-z谩茅铆贸煤帽]{2,12})?\s?([A-z]{1,1}[a-z谩茅铆贸煤帽]{2,12})?\s?([A-z]{1,1}[a-z谩茅铆贸煤帽]{2,12})?$

Soluciona muchos nombres tipo:

Ac谩 est谩 mi soluci贸n:

^([A-Z][a-z铆谩茅煤贸帽]+\s?){1,}\.?$

Funciona con todos estos datos:

Rosa Mar铆a Mart铆nez Su谩rez.

Ana Mar铆a Casanova

Mar铆a Jos茅 Gonz谩lez Botana de Sol谩.

Mar铆a Eugenia Florez.

Clotilde Acosta.

Mar铆a Cristina Lancelotti

Graciela Zabala.

Cristina De Giacomi.

Rodolfo Francisco Marabotto

Norberto Gurvich

Carlos Alberto Ficicchia Gigliotti

Marcela Mar铆a Delorenzi

Juan Mart铆n Rago

Fabi谩n Alberto G贸mez.

Ricardo Luis Amigorena

Gabriel Julio Fern谩ndez

Mar铆a Cecilia Parrondo

Noem铆 Rosa Castro

Mauricio Goldfarb

Mariana Esp贸sito

Alejandro Wiebe.

Carla Rivero

Patricia Ram铆rez

Luciano Giugno

Adri谩n Mart铆nez

Rub茅n Casti帽eiras

Mariela Anchipi

Rub茅n Enrique Brieva

Ezequiel Cwirkaluk

Bautista

Ignacio Manuel Saccomano

Horacio Jorge Arias

Alberto Francisco Pochulu

PD: Son nombres de famosos argentinos, les recomiendo hacer lo mismo con famosos de sus pa铆ses porque son f谩ciles de buscar en grandes vol煤menes y hay de todo tipo 馃槂

隆Funciona con el nombre del hijo de Elon Musk! X 脝 A-12
Hola les dejo mi aporte, para evitar escribir todas las letras con acentos tanto may煤sculas como min煤sculas encontr茅 que se puede poner un rango de n煤mero de caracteres. Esto puede abarcar varios signos raros. Adem谩s de que podemos agrupar con par茅ntesis y decidir con delimitadores cuantas veces puede suceder ese patr贸n.

^([A-Z\u00C0-\u00FF]\s?[a-z\u00C0-\u00FF\.?]{1,}\s?){1,}.*$

隆Espero que les sirva!

Esta es mi soluci贸n:
[A-Z脕脡脥脫脷脩][a-z谩茅铆贸煤帽]+ [A-Za-z脕脡脥脫脷脩][a-z谩茅铆贸煤帽]+(( [A-Z脕脡脥脫脷脩][a-z谩茅铆贸煤帽]+){1,})?