How to read this text and separate the names of each person using Artificial Intelligence?

Asked

Viewed 579 times

-2

I have this text, I would like to read the names of each of the players. What would be the best way to read? Is there a tool/language or extension for C# that allows me to read this structure? Not a Regex, but something like the concept of Clustering in Computer Vision / Artificial Intelligence.

Note: The ideal would be something similar to that recognition of Patterns, images, neural networks. Where the program would see certain blocks and try to classify them. I know how to do it in the imperative way. I thought I’d ask to see if anyone knows any non-essential solution, closer to a neural network clustering.

Brasil

Goleiros: Julio César (Toronto FC-CAN), Jefferson (Botafogo-BRA) e
Victor (Atlético Mineiro-BRA)

Defensores: Thiago Silva (Paris Saint-Germain-FRA), David Luiz
(Chelsea-ING), Dante (Bayern de Munique-ALE), Henrique (Napoli-ITA),
Daniel Alves (Barcelona-ESP), Maicon (Roma-ITA), Marcelo (Real
Madrid-ESP) e Maxwell (Paris Saint-Germain-FRA)

Meio-campistas: Luiz Gustavo (Wolfsburg-ALE), Paulinho
(Tottenham-ING), Ramires (Chelsea-ING), Fernandinho (Manchester
City-ING), Hernanes (Inter de Milão-ITA), Oscar (Chelsea-ING) e
Willian (Chelsea-ING)

Atacantes: Hulk (Zenit-RUS), Bernard (Shakhtar Donetsk-UCR), Fred
(Fluminense-BRA), Jô (Atlético Mineiro-BRA) e Neymar (Barcelona-ESP)

Técnico: Luiz Felipe Scolari (BRA)


Croácia

Goleiros: Stipe Pletikosa (Rostov-RUS), Danijel Subasic (Monaco-FRA) e
Oliver Zelenika (Lokomotiv Zagreb-CRO)

Defensores: Darijo Srna (Shakhtar Donetsk-UCR), Domagoj Vida (Dínamo
de Kiev-UCR), Sime Vrsaljko (Genoa-ITA), Ivan Strinic (Dnipro-UCR),
Danijel Pranjic (Panathinaikos-GRE), Vedran Corluka (Lokomotiv
Moscou-RUS), Dejan Lovren (Southampton-ING), Gordon Schindelfeld
(Panathinaikos-GRE) e Igor Bubnjic (Udinese-ITA)

Meio-campistas: Luka Modric (Real Madrid-ESP), Ivan Rakitic
(Sevilla-ESP), Mateo Kovacic (Inter de Milão-ITA), Niko Kranjcar
Queens Park Rangers-ING), Marcelo Brozovic (Dínamo Zagreb-CRO), Ognjen
Vukojevic (Dínamo de Kiev-UCR), Milan Badelj (Hamburgo-ALE), Ivan
Mocinic (Rijeka-CRO), Mario Pasalic (Hajduk Split-CRO) e Sammir
(Getafe-ESP)

Atacantes: Mario Mandzukic (Bayern de Munique-ALE), Nikica Jelavic
(Hull City-ING), Ivica Olic (Wolfsburg-ALE), Eduardo da Silva
(Shakhtar Donetsk-UCR), Duje Cop (Dínamo Zagreb-CRO), Ivo Ilicevic
(Hamburgo-ALE), Ivan Perisic (Wolfsburg-ALE) e Ante Rebic
(Fiorentina-ITA)

Técnico: Niko Kovac (CRO)

México

Goleiros: Jesús Corona (Cruz Azul-MEX), Guillermo Ochoa (Ajaccio-FRA)
e Alfredo Talavera (Toluca-MEX)

Defensores: Rafael Márquez (León-MEX), Diego Reyes (Porto-POR), Héctor
Moreno (Espanyol-ESP), Carlos Salcido (Tigres-MEX), Francisco Maza
Rodríguez (América-MEX), Paul Aguilar (América-MEX), Miguel Layún
(América-MEX), Andrés Guardado (Bayer Leverkusen-ALE)

Meio-campistas: José Juan Vázquez (León-MEX), Juan Carlos Medina
(América-MEX), Héctor Herrera (Porto-POR), Carlos Peña (León-MEX),
Luis Montes (León-MEX), Marco Fabián (Cruz Azul-MEX) e Isaac Brizuela
(Toluca-MEX)

Atacantes: Oribe Peralta (Santos Laguna-MEX), Chicharito Hernández
(Manchester United-ING), Raúl Jiménez (América-MEX), Alan Pulido
(Tigres-MEX) e Giovani dos Santos (Villarreal-ESP)

Técnico: Miguel Herrera (MEX)

Camarões

Goleiros: Charles Itandje (Konyaspor-TUR), Guy Roland Ndy Assembe
(Guingamp-FRA), Sammy Ndjock (Fethiyespor-TUR) e Feudjou Loic (Coton
Sport-CAM)

Defensores: Allan Nyom (Granada-ESP), Nounkeu Dany (Besiktas-TUR),
Cedric Djeugoue (Coton Sport-CAM), Aurelien Chedjou (Galatasaray-TUR),
Nicolas N’koulou (Marseille-FRA), Jean-Armel Kana-Biyick (Rennes-FRA),
Henri Bedimo (Lyon-FRA), Benoit Assou-Ekotto (Queens Park Rangers-ING)
e Gaetang Bong (Olympiacos-GRE)

Meio-campistas: Enoh Eyong (Antalyaspor-TUR), Jean Makoun
(Rennes-FRA), Joel Matip (Schalke 04-ALE), Stephane Mbia
(Sevilla-ESP), Landry N’guemo (Bordeaux-FRA), Alexandre Song
(Barcelona-ESP), Cedric Loe (Osasuna-ESP) e Edgar Salli (Lens-FRA)

Atacantes: Samuel Eto'o (Chelsea-ING), Eric-Maxime Choupo-Moting
(Mainz 05-ALE), Benjamin Moukandjo (Nancy-FRA), Vincent Aboubakar
(Lorient-FRA), Pierre Achille Webo (Fenerbahçe-TUR), Mohamadou
Idrissou (Kaiserslautern-ALE) e Fabrice Olinga (Zulte Waregem-BEL)

Técnico: Volker Finke (ALE)

Espanha

Goleiros: Iker Casillas (Real Madrid-ESP), Pepe Reina (Napoli-ITA) e
David de Gea (Manchester United-ING)

Defensores: Dani Carvajal (Real Madrid-ESP), Sergio Ramos (Real
Madrid-ESP), Gerard Piqué (Barcelona-ESP), Jordi Alba (Barcelona-ESP),
Cesar Azplicueta (Chelsea-ING), Juanfran (Atlético de Madrid-ESP),
Javi Martinez (Bayern de Munique-ALE), Raul Albiol (Napoli-ITA) e
Alberto Moreno (Sevilla-ESP)

Meio-campistas: Sergio Busquets (Barcelona-ESP), Xavi Hernandez
(Barcelona-ESP), Andrés Iniesta (Barcelona-ESP), Cesc Fabregas
(Barcelona-ESP), Xabi Alonso (Real Madrid-ESP), Ander Iturraspe
(Athletic Bilbao-ESP), David Silva (Manchester City-ING), Santi
Cazorla (Arsenal-ING), Koke (Atletico de Madri-ESP), Tiago Alcantara
(Bayern de Munique-ALE) e Juan Mata (Manchester United-ING)

Atacantes: Diego Costa (Atlético de Madrid-ESP), David Villa (Atlético
de Madri-ESP), Alvaro Negredo (Manchester City-ING), Jesus Navas
(Manchester City-ING), Pedro Rodriguez (Barcelona-ESP), Fernando
Llorente (Juventus-ITA) e Fernando Torres (Chelsea-ING)

Técnico: Vicente Del Bosque (ESP)

Holanda

Goleiros: Jasper Cillessen (Ajax-HOL), Jeroen Zoet (PSV
Eindhoven-HOL), Michel Vorm (Swansea-ING) e Tim Krul (Newcastle-ING)

Defensores: Daley Blind (Ajax-HOL), Joel Veltman (Ajax-HOL), Paul
Verhaegh (Augsburg-ALE), Patrick van Aanholt (Vitesse-HOL), Stefan de
Vrij (Feyenoord-HOL), Daryl Janmaat (Feyenoord-HOL), Terence Kongolo
(Feyenoord-HOL), Bruno Martins Indi (Feyenoord-HOL), Karim Rekik (PSV
Eindhoven-HOL) e Ron Vlaar (Aston Villa-ING)

Meio-campistas: Jordy Clasie (Feyenoord-HOL), Tonny Trindade de
Vilhena (Feyenoord-HOL), Davy Klaassen (Ajax-HOL), Georginio Wijnaldum
(PSV Eindhoven-HOL), Leroy Fer (Norwich City-ING), Nigel de Jong
(Milan-ITA), Jonathan De Guzmán (Swansea-ING), Rafael Van der Vaart
(Hamburgo-ALE), Wesley Sneijder (Galatasaray-TUR)

Atacantes: Jean-Paul Boetius (Feyenoord-HOL), Quincy Promes
(Twente-HOL), Memphis Depay (PSV Eindhoven-HOL), Arjen Robben (Bayern
de Munique-ALE), Dirk Kuyt (Fenerbahçe-TUR), Jeremain Lens (Dinamo de
Kiev-UCR) e Robin van Persie (Manchester United-ING)

Técnico: Louis Van Gaal (HOL)

Chile

Goleiros: Claudio Bravo (Real Sociedad-ESP), Paulo Garcés
(O'Higgins-CHI), Johnny Herrera (Universidad de Chile-CHI) e
Cristopher Toselli (Universidad Católica-CHI)

Defensores: Miiko Albornoz (Malmo-SUE), Enzo Andía (Universidad
Católica-CHI), Marcos González (Unión Española-CHI), Mauricio Isla
(Juventus-ITA), Gonzalo Jara (Nottingham Forest-ING), Eugenio Mena
(Santos-BRA) e José Rojas (Universidad de Chile-CHI)

Meio-campistas: Charles Aránguiz (Internacional-BRA), Jean Beausejour
(Wigan-ING), Carlos Carmona (Atalanta-ITA), Marcelo Díaz (Basel-SUI),
Matías Fernández (Fiorentina-ITA), José Pedro Fuenzalida (Colo
Colo-CHI), Felipe Gutiérrez (Twente-HOL), Pedro Pablo Hernández
(O'Higgins-CHI), Gary Medel (Cardiff City-ING), Rodrigo Millar
(Atlas-MEX), Francisco Silva (Osasuna-ESP), Jorge Valdívia
(Palmeiras-BRA) e Arturo Vidal (Juventus-ITA)

Atacantes: Alexis Sánchez (Barcelona-ESP), Gustavo Canales (Unión
Española-CHI), Fabián Orellana (Celta de Vigo-ESP), Esteban Paredes
(Colo Colo-CHI), Mauricio Pinilla (Cagliari-ITA) e Eduardo Vargas
(Valencia-ESP)

Técnico: Jorge Sampaoli (ARG)

Austrália

Goleiros: Mathew Ryan (Club Brugge-BEL), Mitchell Langerak (Borussia
Dortmund-ALE), Eugene Galekovic (Adelaide United-AUS) e Mark
Birighitti (Newcastle Jets-AUS)

Defensores: Curtis Good (Dundee United-ESC), Jason Davidson
(Heracles-HOL), Matthew Spiranovic (Western Sydney Wanderers-AUS),
Luke Wilkshire (Dinamo Moscou-RUS), Ivan Franjic (Brisbane Roar-AUS),
Bailey Wright (Preston North End-ING), Ryan McGowan (Shandong
Luneng-CHN) e Alex Wilkinson (Jeonbuk Hyundai Motors-COR)

Meio-campistas: Joshua Brillante (Newcastle Jets-AUS), Oliver Bozanic
(Lucerna-SUI), Mark Bresciano (Al Gharafa-QAT), James Holland (Áustria
Viena-AUT), Mile Jedinak (Crystal Palace-ING), Mark Milligan
(Melbourne Victory-AUS), Dario Vidosic (Sion-SUI), Adam Sarota
(Utrecht-HOL), Matt McKay (Brisbane Roar-AUS), James Troisi
(Atalanta-ITA) e Massimo Luongo (Swindon-ING)

Atacantes: Tim Cahill (NY Red Bulls-EUA), Josh Kennedy (Nagoya
Grampus-JAP), Matthew Leckie (FSV Frankfurt-ALE), Tommy Oar
(Utrecht-HOL), Tomas Rogic (Celtic-ESC), Ben Halloran (Fortuna
Düsseldorf-ALE) e Adam Taggart (Newcastle Jets-AUS)

Técnico: Angelos Postecoglou (AUS)

Colômbia

Goleiros: David Ospina (Nice-FRA), Faryd Mondragón (Deportivo
Cali-COL) e Camilo Vargas (Santa Fe-COL)

Defensores: Mario Alberto Yépes (Atalanta-ITA), Aquivaldo Mosquera
(América-MEX), Cristian Zapata (Milan-ITA), Carlos Valdez (San
Lorenzo-ARG), Luis Perea (Cruz Azul-MEX), Eder Álvarez Balanta (River
Plate-ARG), Santiago Arias (PSV Eindhoven-HOL), Camilo Zúñiga
(Napoli-ITA) e Pablo Armero (West Ham-ING)

Meio-campistas: Carlos Sánchez (Elche-ESP), Fredy Guarín
(Internazionale-ITA), Abel Aguilar (Toulouse-FRA), Aldo Leao Ramirez
(Morelia-MEX), Juan Fernando Quintero (Porto-POR), James Rodríguez
(Monaco-FRA), Macnelly Torres (Al Shabab-ARA), Juan Guillermo Cuadrado
(Fiorentina-ITA), Edwin Valencia (Fluminense-BRA), Alexander Mejía
(Nacional-COL), Elkin Soto (Mainz-ALE)

Atacantes: Falcao García (Monaco-FRA), Carlos Bacca (Sevilla-ESP),
Adrián Ramos (Borussia Dortmund-ALE), Luis Fernando Muriel
(Udinese-ITA), Teófilo Gutiérrez (River Plate-ARG), Jackson Martinez
(Porto-POR) e Víctor Ibarbo (Cagliari-ITA)

Técnico: José Pekerman (ARG)

Grécia

Goleiros: Alexandros Tsorvas (Apollon Smyrnis-GRE), Michalis Sifakis
(Atromitos-GRE), Orestis Karnezis (Granada-ESP), Panaglotis Glykos
(Paok-GRE) e Stefanos Kapino (Panathinaikos-GRE)

Defensores: Avraam Papadopoulos (Olympiacos-GRE), Dimitris Siovas
(Olympiacos-GRE), Kostas Manolas (Olympiacos-GRE), Giannis Maniatis
(Olympiacos-GRE), José Holebas (Olympiacos-GRE), Sokratis
Papastathopoulos (Borussia Dortmund-ALE), Georgios Tzavellas
(Paok-GRE), Loukas Vyntra (Levante-ESP) e Vasilis Torosidis (Roma-ITA)

Meio-campistas: Alexandros Tziolis (Kayserispor-TUR), Andreas Samaris
(Olympiacos-GRE), Kostas Katsouranis (PAOK-GRE), Giorgos Karagounis
(Fulham-ING), Panagiotis Tachtsidis (Torino-ITA), Sotiris Ninis
(PAOK-GRE), Giannis Fetfazidis (Genoa-ITA), Kostas Fortounis
(Kaiserslautern-ALE), Lazaros Christodoulopoulos (Bologna-ITA) e
Panagiotis Kone (Bologna-ITA)

Atacantes: Dimitris Papadopoulos (Atromitos-GRE), Dimitris Salpingidis
(PAOK-GRE), Giorgios Samaras (Celtic-ESC), Kostas Mitroglou (Fulham
FC-ING) e Theofanis Gekas (Konyaspor-TUR)

Técnico: Fernando Santos (POR)

Costa do Marfim

Goleiros: Boubacar Barry (Lokeren-BEL), Sayouba Mande (Stabaek-NOR),
Sylvain Gbohouo (Sewe San Pedro-CIV), Ali Badra Sangaré (ASEC
Mimosas-CIV)

Defensores: Kolo Toure (Liverpool-ING), Arthur Boka (Stuttgart-ALE),
Jean-Daniel Akpa Akpro (Toulouse-FRA), Serge Aurier (Toulouse-FRA),
Viera Diarrassouba (Caykur Rizespor-TUR), Didier Zokora
(Trabzonspor-TUR), Constant Djakpa (Frankfurt-ALE), Brice Dja Djedje
(Marseille-FRA), Benjamin Angoua Brou (Valenciennes-FRA), Bamba
Souleymane (Trabzonspor-TUR)

Meio-campistas: Ismael Diomande (St Etienne-FRA), Max Gradel (St
Etienne-FRA), Yaya Toure (Manchester City-ING), Cheick Tiote
(Newcastle-ING), Serey Die (Basel-SUI), Didier Ya Konan (Hanover
96-ALE)

Atacantes: Didier Drogba (Galatasaray-TUR), Gervinho (Roma-ITA),
Salomon Kalou (Lille-FRA), Wilfried Bony (Swansea-ING), Giovanni Sio
(Basel-SUI), Mathis Bolly (Fortuna Düsseldorf-ALE), Seydou Doumbia
(CSKA Moscou-RUS), Lacina Traoré (Everton-ING)

Técnico: Sabri Lamouchi (FRA)

Japão

Goleiros: Eiji Kawashima (Standard Liege-BEL), Shusaku Nishikawa
(Urawa Reds-JAP), Shuichi Gonda (FC Tokyo-JAP)

Defensores: Yasuyuki Konno (Gamba Osaka-JAP), Masahiko Inoha (Jubilo
Iwata-JAP), Yuto Nagatomo (Internazionale-ITA), Masato Morishige (FC
Tokyo-JAP), Atsuto Uchida (Schalke 04-ALE), Maya Yoshida
(Southampton-ING), Hiroki Sakai (Hannover 96-ALE), Gotoku Sakai
(Stuttgart-ALE)

Meio-campistas: Yasuhito Endo (Gamba Osaka-JAP), Makoto Hasebe
(Nuremberg-ALE), Toshihiro Aoyama (Sanfrecce Hiroshima-JAP), Hotaru
Yamaguchi (Cerezo Osaka-JAP), Keisuke Honda (Milan-ITA), Shinji Kagawa
(Manchester United-ING)

Atacantes: Yoshito Okubo (Kawasaki Frontale-JAP), Shinji Okazaki
(Mainz 05-ALE), Hiroshi Kiyotake (Nuremberg-ALE), Yoichiro Kakitani
(Cerezo Osaka-JAP), Manabu Saito (Yokohama F-Marinos-JAP), Yuya Osako
(1860 Munich-ALE)

Técnico: Alberto Zaccheroni (JAP)

Uruguai

Goleiros: Fernando Muslera (Galatasaray-TUR), Martín Silva (Vasco-BRA)
e Rodrigo Muñoz (Libertad-PAR)

Defensores: Diego Lugano (West Bromwich-ING), Diego Godín (Atlético de
Madri-ESP), José Maria Giménez (Atlético de Madri-ESP), Martín Cáceres
(Juventus-ITA), Maxi Pereira (Benfica-POR), Jorge Fucile (Porto-POR),
Sebástian Coates (Nacional-URU) e Álvaro Pereira (São Paulo-BRA)

Meio-campistas: Arévalo Rios (Monarcas Morelia-MEX), Walter Gargano
(Parma-ITA), Diego Pérez (Bologna-ITA), Sebástian Eguren
(Palmeiras-BRA), Álvaro González (Lazio-ITA), Alejandro Silva
(Lanús-ARG), Cristian Rodríguez (Atlético de Madrid-ESP), Gastón
Ramírez (Southampton-ING) e Nicolás Lodeiro (Botafogo-BRA)

Atacantes: Luís Suárez (Liverpool-ING), Edinson Cavani (Paris
Saint-Germain-FRA), Diego Forlán (Cerezo Osaka-JAP), Abel Hernández
(Palermo-ITA) e Cristian Stuani (Espanyol-ESP)

Técnico: Óscar Tabárez (URU)

Costa Rica

Goleiros: Keylor Navas (Levante-ESP), Patrick Pemberton
(Alajuelense-CRC) e Daniel Cambronero (Club Herediano-CRC)

Defensores: Giancarlo González (Columbus Crew-EUA), Óscar Duarte (Club
Brugge-BEL), Junior Díaz (Mainz 05-ALE), Michael Umaña (Deportivo
Saprissa-CRC), Jhonny Acosta (Alajuelense-CRC), Roy Miller (NY Red
Bulls-EUA), Cristian Gamboa (Rosenborg-NOR), Waylon Francis (Columbus
Crew-EUA), Kendall Waston (Deportivo Saprissa-CRC) e Heiner Mora
(Deportivo Saprissa-CRC)

Meio-campistas: Yeltsin Tejeda (Deportivo Saprissa-CRC), José Miguel
Cubero (Club Herediano-CRC), Celso Borges (AIK Solna-SUE), Cristian
Bolaños (Copenhagem-DIN), Carlos Hernández (Wellington Phoenix-NZL),
Michael Barrantes (Aalesund-NOR), Óscar Esteban Granados (Club
Herediano-CRC), Bryan Ruíz (PSV-HOL) e Diego Calvo (Valerenga-NOR)

Atacantes: Álvaro Saborío (Real Salt Lake-EUA), Joel Campbell
(Olympiacos-GRE), Randall Brenes (Cartaginés-CRC) e Marco Ureña (Kuban
Krasnodar-RUS)

Técnico: Jorge Luis Pinto (COL)

Inglaterra

Goleiros: Joe Hart (Manchester City-ING), Fraser Forster (Celtic-ESC)
e Ben Foster (West Bromwich-ING)

Defensores: Glen Johnson (Liverpool-ING), Phil Jones (Manchester
United-ING), Gary Cahill (Chelsea-ING), Phil Jagielka (Everton-ING),
Chris Smalling (Manchester United-ING), Leighton Baines (Everton-ING)
e Luke Shaw (Southampton-ING)

Meio-campistas: Steven Gerrard (Liverpool-ING), Jack Wilshere
(Arsenal-ING), Jordan Henderson (Liverpool-ING), Frank Lampard
(Chelsea-ING), James Milner (Manchester City-ING), Ross Barkley
(Everton-ING) e Adam Lallana (Southampton-ING)

Atacantes: Raheem Sterling (Liverpool-ING), Alex Oxlade-Chamberlain
(Arsenal-ING), Wayne Rooney (Manchester United-ING), Daniel Sturridge
(Liverpool-ING), Danny Welbeck (Manchester United-ING) e Rickie
Lambert (Southampton-ING)

Técnico: Roy Hogdson (ING)

Itália

Goleiros: Buffon (Juventus-ITA), Perin (Genoa-ITA) e Sirigu (Paris
Saint Germain-FRA)

Defensores: Abate (Milan-ITA), Barzagli (Juventus-ITA), Bonucci
(Juventus-ITA), Chiellini (Juventus-ITA), Darmian (Torino-ITA), De
Sciglio (Milan-ITA), Maggio (Napoli-ITA), Paletta (Parma-ITA), Pasqual
(Fiorentina-ITA) e Ranocchia (Inter de Milão-ITA)

Meio-campistas: Aquilani (Fiorentina-ITA), Candreva (Lazio-ITA), De
Rossi (Roma-ITA) , Marchisio (Juventus-ITA) , Montolivo (Milan-ITA),
Thiago Motta (Paris Saint Germain-FRA) , Parolo (Parma-ITA), Pirlo
(Juventus-ITA), Romulo (Verona-ITA) e Verratti (Paris Saint
Germain-FRA)

Atacantes: Balotelli (Milan-ITA), Cassano (Parma-ITA), Cerci
(Torino-ITA), Destro (Roma-ITA), Immobile (Torino-ITA), Insigne
(Napoli-ITA) e Rossi (Fiorentina-ITA)

Técnico: Cesare Prandelli (ITA)

Suíça 

Goleiros: Diego Benaglio (Wolfsburg-ALE), Roman Bürki
(Grasshopper-SUI) e Yann Sommer (Basel-SUI)   

Defensores: Steve von Bergen (Young Boys-SUI), Johannes Djourou
(Hamburgo-ALE), Michael Lang (Grasshopper-SUI), Stephan Lichsteiner
(Juventus-ITA), Ricardo Rodriguez (Wolfsburg-ALE), Fabian Schär
(Basel-ALE), Philippe Senderos (Valencia-ESP) e Reto Ziegler
(Sassuolo-ITA)  

Meio-campistas: Tranquillo Barnetta (Eintracht Frankfurt-ALE), Valon
Behrami (Napoli-ITA), Blerim Dzemaili (Napoli-ITA), Gelson Fernandes
(Freiburg-ALE), Gökhan Inler (Napoli-ITA), Granit Xhaka (Borussia
Mönchengladbach-ALE) e Valentin Stocker (Basel-SUI) 

Atacantes: Josip Drmic (Nuremberg-ALE), Mario Gavranovic (Zurich-SUI),
Admir Mehmedi (Freiburg-ALE), Haris Seferovic (Real Sociedad-ESP) e
Xherdan Shaqiri (Bayern de Munique-ALE)

Técnico: Ottmar Hitzfeld (ALE)

Equador

Goleiros: Máximo Banguera (Barcelona-EQU), Adrián Bone (El
Nacional-EQU) e Alexander Domínguez (Liga de Quito-EQU)

Defensores: Frickson Erazo (Flamengo-BRA), Jorge Guagua (Emelec-EQU),
Oscar Bagüí (Emelec-EQU), Gabriel Achilier (Emelec-EQU), John Narváez
(Emelec-EQU), Juan Carlos Paredes (Barcelona-EQU), Cristian Ramírez
(Fortuna Düsseldorf-ALE) e Walter Ayoví (Pachuca-MEX)

Meio-campistas: Segundo Castillo (Al-Hilal-SAU), Carlos Gruezo
(Stuttgart-ALE), Renato Ibarra (Vitesse-HOL), Christian Noboa (Dínamo
de Moscou-ING), Pedro Quiñónez (Emelec-EQU), Angel Mena (Emelec-EQU),
Luis Saritama (Barcelona-EQU), Antonio Valencia (Manchester
United-ING), Edison Méndez (Santa Fe-COL), Fidel Martínez
(Tijuana-MEX) e Oswaldo Minda (Chivas USA-EUA)

Atacantes: Joao Rojas (Cruz Azul-MEX), Felipe Caicedo (Al-Jazira-EAU),
Jefferson Montero (Monarcas Morelia-MEX), Jaime Ayoví (Tijuana-MEX),
Armando Wila (Universidad Católica-EQU), Enner Valencia (Pachuca-MEX),
Cristian Penilla (Barcelona-EQU) e Michael Arroyo (Atlante-MEX)

Técnico: Reinaldo Rueda (EQU)

França

Goleiros: Hugo Lloris (Tottenham-ING), Steve Mandanda (Olympique
Marselha-FRA) e Mickael Landreau (Bastia-FRA)

Defensores: Bacary Sagna (Arsenal-ING), Mathieu Debuchy
(Newcastle-ING), Patrice Evra (Manchester United-ING), Lucas Digne
(Paris Saint-Germain-FRA), Raphael Varane (Real Madrid-ESP), Laurent
Koscielny (Arsenal-ING), Mamadou Sakho (Liverpool-ING) e Eliaquim
Mangala (Porto-POR)

Meio-campistas: Yohan Cabaye (Paris Saint-Germain-FRA), Clement
Grenier (Lyon-FRA), Blaise Matuidi (Paris Saint-Germain-FRA), Rio
Mavuba (Lille-FRA), Paul Pogba (Juventus-ITA), Mousa Sissoko
(Newcastle-ING) e Mathieu Valbuena (Olympique de Marselha-FRA)

Atacantes: Karim Benzema (Real Madrid-ESP), Olivier Giroud
(Arsenal-ING), Antoine Griezmann (Real Sociedad-ESP), Frank Ribéry
(Bayern de Munique-ALE) e Loic Remy (Newcastle-ING)

Técnico: Didier Deschamps (FRA)

Honduras

Goleiros: Noel Valladares (Olimpia-HON), Donis Escober (Olimpia-HON) e
Luis López (Real España-HON)

Defensores: Maynor Figueroa (Hull City-ING), Víctor Bernárdez (San
José Earthquakes-EUA), Osman Chávez (Quingdao Jonoon-CHN), Juan Pablo
Montes (Motagua-HON), Arnold Peralta (Rangers-ESC), Bryan Beckeles
(Olimpia-HON), Emilio Izaguirre (Celtic-ESC), Juan Carlos García
(Wigan-ING)

Meio-campistas: Wilson Palacios (Stoke City-ING), Roger Espinoza
(Wigan-ING), Luis Garrido (Olimpia-HON), Jorge Claros (Motagua-HON),
Andy Najar (Anderlecht-BEL), Boniek García (Houston Dynamo-EUA), Mario
Martínez (Real España-HON), Marvin Chávez (Colorado Rapids-EUA)

Atacantes: Carlo Costly (Real España-HON), Jerry Bengtson (New England
Revolution-EUA), Rony Martínez (Real Sociedad de Honduras-HON), Jerry
Palacios (Alajuelense-CRC)

Técnico: Luis Suárez (COL)

Argentina

Goleiros: Mariano Andújar (Catania-ARG), Agustín Orion (Boca
Juniors-ARG) e Sergio Romero (Monaco-FRA)

Defensores: José Basanta (Monterrey-MEX), Hugo Campagnaro (Inter de
Milão-ITA), Martín Demichelis (Manchester City-ING), Federico
Fernández (Napoli-ITA), Ezequiel Garay (Benfica-POR), Lisandro López
(Getafe-ESP), Gabriel Mercado (River Plate-ARG), Nicolás Otamendi
(Atlético Mineiro-BRA), Marcos Rojo (Sporting de Lisboa-POR) e Pablo
Zabaleta (Manchester City-ING)

Meio-campistas: Fernando Gago (Boca Juniors-ARG), Javier Macherano
(Barcelona-ESP), Angel Di María (Real Madrid-ESP), Éver Banega
(Newell´s Old Boys-ARG), Lucas Biglia (Lazio-ITA), Maximiliano
Rodríguez (Newell´s Old Boys-ARG), Augusto Fernández (Celta de
Vigo-ESP), José Sosa (Atlético de Madrid-ESP), Enzo Pérez
(Benfica-POR), Ricardo Álvarez (Inter de Milão-ITA), Fabián Rinaudo
(Catania-ITA)

Atacantes: Sergio Aguero (Manchester City-ING), Franco Di Santo
(Werder Bremen-ALE), Gonzalo Higuaín (Napoli-ITA), Ezequiel Lavezi
(Paris Saint-Germain-FRA), Lionel Messi (Barcelona-ESP) e Rodrigo
Palacio (Inter de Milão-ITA)

Técnico: Alejandro Sabella (ARG)

Bósnia Herzegovina

Goleiros: Asmir Begovic (Stoke City-ING), Jasmin Fejzic (Aalen-ALE) e
Asmir Avdukic (Borac Banja Luka-BIH)

Defensores: Emir Spahic (Bayer Leverkusen-ALE), Toni Sunjic (Zorya
Lugansk-UCR), Sead Kolasinac (Schalke 04-ALE), Ognjen Vranjes
(Elazigspor-TUR), Ervin Zukanovic (Gent-BEL), Ermin Bicakcic
(Eintracht Braunschweig-ALE) e Muhamed Besic (Ferencvaros-HUN)

Meio-campistas: Miralem Pjanic (Roma-ITA), Izet Hajrovic
(Galatasaray-TUR), Mensur Mujdza (Freiburg-ALE), Haris Medunjanin
(Gaziantepspor-TUR), Senad Lulic (Lazio-ITA), Anel Hadzic (Sturm
Graz-AUT), Tino Susic (Hajduk Split-CRO), Sejad Salihovic
(Hoffenheim-ALE) e Zvjezdan Misimovic (Guizhou Renhe-CHN), Senijad
Ibricic (Erciyespor-TUR), Edin Visca (Istanbul BB-TUR) e Avdija
Vrsajevic (Hajduk Split-CRO)

Atacantes: Vedad Ibisevic (Stuttgart-ALE) e Edin Dzeko (Manchester
City-ING)

Técnico: Safet Sušić (BIH)

Irã

Goleiros: Daniel Davari (Eintracht Braunschweig-ALE), Alireza Haghighi
(Sporting Covilha-POR), Rahman Ahmadi (Sepahan Isfahan-IRN) e Sousha
Makani (Foolad Khuzestan-IRN)

Defensores: Hosro Heidari (Esteghlal-IRN), Hossein Mahini
(Persepolis-IRN), Steven Mehrdad Beitashour (Vancouver Whitecaps-CAN),
Pejman Montazeri (Umm Salal-QAT), Jalal Hosseini (Persepolis-IRN),
Amir Hossein Sadeghi (Esteghlal-IRN), Mohammad Reza Khanzadeh (Zob
Ahan-IRN), Ahmad Alenemeh (Naft Tehran-IRN), Hashem Beikzadeh
(Esteghlal-IRN), Ehsan Hajsafi (Sepahan Isfahan-IRN) e Mehrdad Pooladi
(Persepolis-IRN)

Meio-campistas: Javad Nekounam (Kuwait SC-KUW), Andranik Teymourian
(Esteghlal-IRN), Reza Haghighi (Persepolis-IRN), Ghasem Hadadifar (Zob
Ahan-IRN) e Bakhtiar Rahmani (Foolad Khuzestan-IRN)

Atacantes: Ashkan Dejagah (Fulham FC-ING), Masoud Shojaei (Las
Palmas-ESP), Alireza Jahanbakhsh (NEC Nijmegen-HOL), Mohammad Reza
Khalatbari (Persepolis-IRN), Mehdi Sharifi (Sepahan Isfahan-IRN), Reza
Ghoochannejhad (Charlton Atheltic-ING), Karim Ansarifard (Tractor
Sazi-IRN) e Sardar Azmoun (Rubin Kazan-RUS)

Técnico: Carlos Queiroz (POR)
  • 1

    What you’ve already done?

  • I copied the names of all the players of all the teams. There I visualized how to do using Split. But I would like otherwise more fluent, dynamic. Perhaps someone might suggest.

  • Do you only need names? a list of names? without teams?

  • Apparently it’s a case of normal string breaking. Divide by lines, then by ":" (or take the country if there is no ":"), then by "," and finally by "(". As an extra step, you can break the "(" result by "-".

  • Almost all languages have a regex standard. You can use it in this program and end all problems.

  • How often do you estimate that this code will run running this parse?

  • Just once. It is a small program, about the cup, so I decided to ask dear friends a cleaner, dynamic and fluent way to perform a task like this.

  • 2

    So make it as simple as possible, if fooling is more work than doing it in the hand. Unless someone else does the whole show, then you don’t have any work.

  • @Tony took out his initial diagram, because it contained some things that would confuse more than help. You have comma in the country, and the positions are more diverse. I believe that the text alone is enough for the staff to analyze.

  • I think some people didn’t understand what I was visualizing and trying to find. It is something like that recognition of Patterns, images, neural networks. Where the program would see certain blocks and try to classify them. I can do it the imperative way. I thought I’d ask to see if anyone knows any non-essential solution, closer to a neural network clustering.

  • @Tony At the moment there is an accuracy of 100% to the natural language processing of names, some competitions can be seen in Kaggle. But I believe that for names of various nationalities and with compound names, as mentioned in the question, a 100% reliable and accurate solution has not yet been realized.

  • Search also about NER - Named-Entity recognition, does not solve all cases. But it is well advanced and can help you in this question.

Show 7 more comments

1 answer

2

One of the solutions, step by step:

Step 1:

Barter ) e for , - last player of a position and positions as "Coach", "Striker", minus "Goalkeepers" (tale after):

texto = texto.Replace(") e", ",").Replace("Técnico", ",").Replace("Atacante", ",");

Step 2:

Identify the selection exchange, for this we need the "Goalkeepers".
We use the Regex: \)$\n\n(^[^:]*$)\n\nGoleiros:

string texto = "[...]Atacante: [...]";
Regex rgx = new Regex(@"\)$\n\n(^[^:]*$)\n\nGoleiros");
string textoSemTimes = rgx.Replace(texto, ",");

See here Regex example in Ruble.

Alternative step 1,2:

Step 1 and 2 can be used as a single Regex:

(\)\se)|(\)$\n\n(^[^:]*$)\n\nGoleiros)|(\)$\n\n(^[\w|Técnico|Meio\-campistas]*:))

string texto = "[...]Atacante: [...]";
string padrao = @"(\)\se)|(\)$\n\n(^[^:]*$)\n\nGoleiros)|(\)$\n\n(^[\w|Técnico|Meio\-campistas]*:))";
Regex rgx = new Regex(padrao);
string textoSomenteJogadores = rgx.Replace(texto, ",");

See here Regex example in Ruble.

Step 3:

Now we only have the names of the players and their origin. We just need now to list them using String.Split with the markers : and ,:

string nomes = textoSemTimes.Split(new []{":", ","},
                                   StringSplitOptions.RemoveEmptyEntries);
  • 1

    I think it would be nice if you specialized better at Regex so that the answer is closer to the purpose of the question.

  • You can include the player’s name and parentheses with information of where it came from.

  • One person indicated me the following regex :|,[(].?[)]

  • 2

    @Tony this regex will not be enough because it will ignore the last players of each position. See: http://rubular.com/r/yOsiv71sOL#

Browser other questions tagged

You are not signed in. Login or sign up in order to post.