Este es un seguimiento y una complicación a esta pregunta: Extracting contents of a string within parentheses.Uso de expresiones regulares para extraer información de una cadena
En esa pregunta que tenía la siguiente cadena -
"Will Farrell (Nick Hasley), Rebecca Hall (Samantha)"
y quería obtener una lista de tuplas en forma de (actor, character)
-
[('Will Farrell', 'Nick Hasley'), ('Rebecca Hall', 'Samantha')]
Para generalizar las cosas, tengo una cadena un poco más complicada, y necesito extraer la misma información. La cadena que tengo es -
"Will Ferrell (Nick Halsey), Rebecca Hall (Samantha), Glenn Howerton (Gary),
with Stephen Root and Laura Dern (Delilah)"
tengo que formatear de la siguiente manera:
[('Will Farrell', 'Nick Hasley'), ('Rebecca Hall', 'Samantha'), ('Glenn Howerton', 'Gary'),
('Stephen Root',''), ('Lauren Dern', 'Delilah')]
Sé que puedo reemplazar las palabras de relleno (con, y, &, etc.), pero puede '' No entiendo cómo agregar una entrada en blanco - ''
- si no hay un nombre de personaje para el actor (en este caso Stephen Root). ¿Cuál sería la mejor manera de hacer esto?
Finalmente, necesito tener en cuenta si un actor tiene múltiples roles, y construir una tupla para cada función que tenga el actor. La cadena final que tengo es:
"Will Ferrell (Nick Halsey), Rebecca Hall (Samantha), Glenn Howerton (Gary, Brad), with
Stephen Root and Laura Dern (Delilah, Stacy)"
y necesito construir una lista de tuplas de la siguiente manera:
[('Will Farrell', 'Nick Hasley'), ('Rebecca Hall', 'Samantha'), ('Glenn Howerton', 'Gary'),
('Glenn Howerton', 'Brad'), ('Stephen Root',''), ('Lauren Dern', 'Delilah'), ('Lauren Dern', 'Stacy')]
Gracias.
@ Michael: gracias por la ortografía de edición. – David542
¿Es realmente necesario usar regex? – utdemir
No, puede ser cualquier cosa. Lo que sea que funcione y sea lo mejor. – David542