At

Função que retorna a primeira posição encontrada em uma string através de outra.

Exemplo da Rotina:

At('PESQUISA', 'FRASE DE PESQUISA COMPLETA')

Exemplo 1- Pesquisa de uma letra:

At - Exemplo 1
At – Exemplo 1
//Bibliotecas
#Include "Protheus.ch"
 
/*/{Protheus.doc} zTeste
Função de Teste
@type function
@author Terminal de Informação
@since 13/11/2016
@version 1.0
    @example
    u_zTeste()
/*/ 
User Function zTeste()
Local aArea   := GetArea()
Local cFrase  := "Terminal de Informação"
Local nPos    := 0

//Encontrando a primeira letra 'a' na frase
nPos := At("a", cFrase)
MsgInfo("A primeira letra 'a' esta na posição "+cValToChar(nPos), "Atenção")

RestArea(aArea)
Return

Exemplo 2- Pesquisa de uma letra a partir de uma posição:

At - Exemplo 2
At – Exemplo 2
//Bibliotecas
#Include "Protheus.ch"
 
/*/{Protheus.doc} zTeste
Função de Teste
@type function
@author Terminal de Informação
@since 13/11/2016
@version 1.0
    @example
    u_zTeste()
/*/ 
User Function zTeste()
Local aArea   := GetArea()
Local cFrase  := "Terminal de Informação"
Local nPos    := 0

//Encontrando a primeira letra 'a' na frase, a partir da posição 10
nPos := At("a", cFrase, 10)
MsgInfo("A primeira letra 'a' esta na posição "+cValToChar(nPos)+" (a partir da posição 10)", "Atenção")

RestArea(aArea)
Return

Exemplo 3- Pesquisa de uma frase dentro de outra:

At - Exemplo 3
At – Exemplo 3
//Bibliotecas
#Include "Protheus.ch"
 
/*/{Protheus.doc} zTeste
Função de Teste
@type function
@author Terminal de Informação
@since 13/11/2016
@version 1.0
    @example
    u_zTeste()
/*/ 
User Function zTeste()
Local aArea   := GetArea()
Local cFrase  := "Terminal de Informação"
Local nPos    := 0

//Encontrando o texto 'forma' e onde começa na frase
nPos := At("forma", cFrase)
MsgInfo("'forma' esta a partir da posição "+cValToChar(nPos), "Atenção")

RestArea(aArea)
Return

Observações:

– Caso tenha dúvidas ou problemas com os exemplos, entre em contato;
– Se tiver sugestões de rotinas, pode entrar em contato;

Referências:

TDN
Universo AdvPL