Estou usando IMPORTXML para pegar alguns dados e então regex para extrair algum texto. A parte que quero extrair é um nome.
Ele sempre vem depois de "Nome Completo:" (menos as aspas). Depois do nome, sempre há uma palavra seguida por dois pontos. Essa palavra pode ser Pronúncia, Linguística, Tipo ou qualquer outra coisa.
O mais próximo que posso chegar é esta fórmula:
=IFERROR(REGEXEXTRACT(REGEXREPLACE(JOIN(" ", IMPORTXML(B13, "//div[@id='meta']")), "\s+", " "), "Full Name:\s*([A-Za-z]+(?:[-'\s][A-Za-z]+)*)"), "")
Infelizmente, isso ainda deixa a última palavra.
Então se você tem por exemplo:
Nome completo: Abraham Lincoln Apelido: Honest Abe.
Eu só quero que ele retire Abraham Lincoln. Essa fórmula, como eu tenho, gera:
Abraham Lincoln Apelido
Outros exemplos:
- Nome completo: John Smith-Rogers Acabamento:
- Nome completo: David Ben-Williams Prelúdio:
- Nome completo: Sean O'Brian Apelido:
- Nome completo: D'Andre Ayton Hora:
- Nome completo: Andy Van Slyke Nome:
Saídas respectivas:
- John Smith-Rogers
- David Ben-Williams
- Sean O'Brian
- D'André Ayton
- Andy Van Slyke
Para um exemplo ao vivo: https://www.baseball-reference.com/players/l/lopezal01.shtml
A fórmula deve produzir: Alfonso Ramon Lopez
https://www.baseball-reference.com/players/r/ruthba01.shtml
A fórmula deve produzir: George Herman Ruth
O que mais preciso fazer tendo em mente que quero ter certeza de que nomes como O'Brien e Smith-Rogers não sejam afetados?