A função REGEXEXTRACT permite-lhe extrair texto de uma cadeia com base numa expressão regular fornecida. Pode extrair a primeira correspondência, todas as correspondências ou a captura de grupos da primeira correspondência.
Sintaxe
A função REGEXEXTRACT extrai cadeias no texto fornecido que correspondem ao padrão.
A sintaxe da função REGEXEXTRACT é:
REGEXEXTRACT(texto; padrão; [return_mode]; [case_sensitivity])
Argumento |
Descrição |
---|---|
texto (necessário) |
O texto ou a referência a uma célula que contém o texto do qual pretende extrair cadeias. |
padrão (necessário) |
A expressão regular ("regex") que descreve o padrão de texto que pretende extrair. |
return_mode |
Um número que especifica as cadeias que pretende extrair. Por predefinição, o modo de retorno é 0. Os valores possíveis são: 0: Devolver a primeira cadeia que corresponde ao padrão 1: Devolver todas as cadeias que correspondem ao padrão como uma matriz 2: Devolver grupos de captura da primeira correspondência como uma matriz Nota: Os grupos de captura são partes de um padrão regex entre parênteses "(...)". Permitem-lhe devolver partes separadas de uma única correspondência individualmente. |
case_sensitivity |
Determina se a correspondência é sensível às maiúsculas e minúsculas. Por predefinição, a correspondência é sensível às maiúsculas e minúsculas. Introduza uma das seguintes opções: 0: Sensível a maiúsculas e 1: Não sensível a maiúsculas |
Notas:
-
Ao escrever padrões regex, os símbolos denominados "tokens" podem ser utilizados que correspondem a uma variedade de carateres. Estes são alguns tokens simples para referência:
-
"[0-9]": qualquer dígito numérico
-
"[a-z]": um caráter no intervalo de a a z
-
".": qualquer caráter
-
"a": o caráter "a"
-
"a*": zero ou mais "a"
-
"a+": um ou mais "a"
-
Todas as expressões regulares para esta função, bem como REGEXTEST e REGEXREPLACE , utilizam o "sabor" PCRE2 do regex.
-
REGEXEXTRACT devolve sempre valores de texto. Pode converter estes resultados novamente num número com a função VALOR.
Exemplos
Copie os dados de exemplo e cole-os na célula A1 de uma nova folha de cálculo do Excel. Se quiser, pode ajustar as larguras das colunas para ver todos os dados.
Extrair nomes com base em letras maiúsculas com o padrão "[A-Z][a-z]+"
Dados |
DylanIas |
Fórmulas |
=REGEXEXTRACT(A2;[A-Z][a-z]+") |
=REGEXEXTRACT(A2,"[A-Z][a-z]+",1) |
A ilustração seguinte mostra os resultados.
Extrair números de telefone com base na estrutura com o padrão "[0-9()]+ [0-9-]+"
Dados |
Sonia Rees (378) 555-4195 Angel Brown (878) 555-8622 Blake Martin (437) 555-8987 William Kirby (619) 555-4212 Avery Smith (579) 555-5658 Parker Jones (346) 555-0925 Liam Small (405) 555-0887 Hollie Rees (666) 555-1872 |
Fórmulas |
=REGEXEXTRACT(A2,"[0-9()]+ [0-9-]+",1) |
A ilustração seguinte mostra o resultado.