A função REGEX.EXTRACT permite-lhe extrair texto de uma cadeia com base numa expressão regular fornecida. Você pode extrair a primeira correspondência, todas as correspondências ou capturar grupos da primeira partida.
Sintaxe
A função REGEXEXTRACT extrai cadeias dentro do texto fornecido que correspondem ao padrão.
A sintaxe da função REGEX.EXTRAIR é:
REGEXEXTRACT(texto, padrão, [return_mode], [case_sensitivity])
| Argumento | Descrição |
|---|---|
|
texto (obrigatório) |
É o texto ou a referência a uma célula que contém o texto do qual pretende extrair cadeias de cadeias. |
|
padrão (obrigatório) |
A expressão regular ("regex") que descreve o padrão do 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 corresponder ao padrão 1: Devolver todas as cadeias que correspondem ao padrão como uma matriz 2: Retornar capturando grupos da primeira correspondência como uma matriz Observação: Os grupos de captura são partes de um padrão regex entre parênteses "(...)". Eles permitem que você devolva partes separadas de uma única partida 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 dos seguintes opções: 0: Sensível a maiúsculas 1: Não sensível a maiúsculas e minú |
Nota
O padrão mais simples é o texto literal que pretende corresponder. Por exemplo, para corresponder ao texto "Corresponder-me", pode utilizar o padrão "Corresponder a mim".
Símbolos chamados "tokens" também podem ser usados que correspondem a uma variedade de caracteres. Estes são alguns tokens simples para referência:
"[0-9]": qualquer algarismo 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 usam o "sabor" PCRE2 do regex.
REGEX.EXTRACT sempre retorna valores de texto. Pode converter estes resultados num número com a função VALOR.
Exemplos
Copie os dados de exemplo e copie-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.
Exemplo 1
Extrair nomes com base em letras maiúsculas com o padrão "[A-Z][a-z]+"
| Dados |
|---|
| DylanWilliams |
| Fórmulas |
| =REGEXEXTRACT(A2,"[A-Z][a-z]+") |
| =REGEXEXTRACT(A2,"[A-Z][a-z]+",1) |
A ilustração seguinte mostra os resultados.
Exemplo 2
Extrair números de telefone com base na respetiva estrutura com o padrão "[0-9()]+ [0-9-]+"
| Dados |
|---|
| Sónia Rees (378) 555-4195 Anjo Castanho (878) 555-8622 Blake Martin (437) 555-8987 Guilherme Kirby (619) 555-4212 Avery Soares (579) 555-5658 Parker Jones (346) 555-0925 Liam Pequeno (405) 555-0887 Hollie Rees (666) 555-1872 |
| Fórmulas |
| =REGEXEXTRACT(A2,"[0-9()]+ [0-9-]+",1) |
A ilustração seguinte mostra o resultado.