Função SUFFIX

Encontra o valor do sufixo após o domínio a partir de um URL válido. Os valores de entrada precisam ser de tipo URL ou string.

Esta função faz parte de um conjunto de funções de processamento de dados de URL.

Uso básico

Exemplos de literais de URL:

derive type:single value: SUFFIX('http://www.example.com' ) as: 'myDomain'

Resultado: é gerada uma coluna que contém o valor com.

derive type:single value: SUFFIX('http://www.exampl.e.com' ) as: 'myDomain'

Resultado: é gerada uma coluna que contém o valor com.

Exemplo de referência de coluna:

derive type:single value: SUFFIX(myURLs) as: 'myDomain'

Resultado: é gerada a nova coluna myDomain, que contém os valores de sufixo extraídos da coluna myURLs.

Sintaxe

derive type:single value: SUFFIX(column_url)

ArgumentoObrigatório?Tipo de dadosDescrição
column_urlSstringNome da coluna ou literal de string ou URL contendo o valor de sufixo a extrair

Para mais informações sobre os padrões de sintaxe, consulte as Observações de sintaxe da documentação da linguagem.

column_url

Nome da coluna ou literal de URL ou string cujos valores são usados para extrair o valor de sufixo.

  • Valores de entrada ausentes geram resultados ausentes.
  • Colunas e caracteres curinga múltiplos não são aceitos.

Observações sobre o uso:

Obrigatório?Tipo de dadosValor de exemplo
SimLiteral de string ou referência de coluna (URL)http://www.example.com

Exemplos

Exemplo: funções domain, subdomain, host e suffix

Este exemplo ilustra como extrair partes de componentes de um URL usando as seguintes funções:

  • DOMAIN: extrai o valor do domínio de um URL. Consulte Função DOMAIN.
  • SUBDOMAIN: extrai o primeiro grupo após o identificador do protocolo e antes do valor do domínio. Consulte Função SUBDOMAIN.
  • HOST: retorna o valor completo do host de um URL. Consulte Função HOST.
  • SUFFIX: extrai o sufixo de um URL. Consulte Função SUFFIX.
  • URLPARAMS: extrai os parâmetros de consulta e valores de um URL. Consulte Função URLPARAMS.
  • FILTEROBJECT: filtra um valor de objeto para exibir apenas os elementos de uma chave específica. Consulte Função FILTEROBJECT.

Origem:

O conjunto de dados inclui os seguintes valores de URLs:

URL
www.example.com
example.com/support
http://www.example.com/products/
http://1.2.3.4
https://www.example.com/free-download
https://www.example.com/about-us/careers
www.app.example.com
www.some.app.example.com
some.app.example.com
some.example.com
example.com
http://www.example.com?q1=broken%20record
http://www.example.com?query=khakis&app=pants
http://www.example.com?q1=broken%20record&q2=broken%20tape&q3=broken%20wrist

Transformação:

Quando os dados acima são importados para o aplicativo, a coluna é reconhecida como um URL. Todos os valores são registrados como válidos, mesmo o endereço IPv4.

Para extrair os valores de domínio e subdomínio:

derive type:single value: DOMAIN(URL) as: 'domain_URL'

derive type:single value: SUBDOMAIN(URL) as:'subdomain_URL'

derive type:single value: HOST(URL) as:host_URL'

derive type:single value: SUFFIX(URL) as:'suffix_URL'

Use o padrão do Cloud Dataprep na transformação abaixo para extrair identificadores de protocolo, se houver, em uma nova coluna:

extract col:URL on:`{start}%*://`

Para limpar isso, renomeie a coluna para protocol_URL.

Para extrair os valores de caminho, use a seguinte expressão regular:

OBSERVAÇÃO: expressões regulares são consideradas um método no nível de desenvolvedor para a correspondência de padrões. Use-as com cautela. Consulte Correspondência de texto.

extract col: URL on: /[^*:\/\/]\/.*$/

A transformação acima captura um pouco demais do URL. Se você renomear a coluna para path_URL, será possível usar a seguinte expressão regular para limpá-la:

extract col:path_URL on:/[!^\/].*$/


Exclua
a coluna path_URL e renomeie a coluna path_URL1 para a que foi excluída. Em seguida:

derive type:single value: URLPARAMS(URL) as: 'urlParams'

Se quiser apenas visualizar os valores para o parâmetro q1, adicione o seguinte:

derive type:single value: FILTEROBJECT(urlParams,'q1') as: 'urlParam_q1'

Resultados:

Para fins de exibição, a tabela de resultados foi dividida em conjuntos separados de colunas.

Conjunto de colunas 1:

URLhost_URLpath_URL
www.example.comwww.example.com
example.com/supportexample.com/support
http://www.example.com/products/www.example.com/products/
http://1.2.3.41.2.3.4
https://www.example.com/free-downloadwww.example.com/free-download
https://www.example.com/about-us/careerswww.example.com/about-us/careers
www.app.example.comwww.app.example.com
www.some.app.example.comwww.some.app.example.com
some.app.example.comsome.app.example.com
some.example.comsome.example.com
example.comexample.com
http://www.example.com?q1=broken%20recordwww.example.com
http://www.example.com?query=khakis&app=pantswww.example.com
http://www.example.com?q1=broken%20record&q2=broken%20tape&q3=broken%20wristwww.example.com

Conjunto de colunas 2:

URLprotocol_URLsubdomain_URLdomain_URLsuffix_URL
www.example.com wwwexamplecom
example.com/support examplecom
http://www.example.com/products/http://wwwexamplecom
http://1.2.3.4http://
https://www.example.com/free-downloadhttps://wwwexamplecom
https://www.example.com/about-us/careershttps://wwwexamplecom
www.app.example.com www.appexamplecom
www.some.app.example.com www.some.appexamplecom
some.app.example.com some.appexamplecom
some.example.com someexamplecom
example.com examplecom
http://www.example.com?q1=broken%20recordhttp://wwwexamplecom
http://www.example.com?query=khakis&app=pantshttp://wwwexamplecom
http://www.example.com?q1=broken%20record&q2=broken%20tape&q3=broken%20wristhttp://wwwexamplecom

Conjunto de colunas 3:

URLurlParamsurlParam_q1
www.example.com
example.com/support
http://www.example.com/products/
http://1.2.3.4
https://www.example.com/free-download
https://www.example.com/about-us/careers
www.app.example.com
www.some.app.example.com
some.app.example.com
some.example.com
example.com
http://www.example.com?q1=broken%20record{"q1":"broken record"}{"q1":"broken record"}
http://www.example.com?query=khakis&app=pants{"query":"khakis","app":"pants"}
http://www.example.com?q1=broken%20record&q2=broken%20tape&q3=broken%20wrist{"q1":"broken record", "q2":"broken tape",
"q3":"broken wrist"}
{"q1":"broken record"}

Esta página foi útil? Conte sua opinião sobre:

Enviar comentários sobre…

Documentação do Google Cloud Dataprep
Precisa de ajuda? Acesse nossa página de suporte.