Olá pessoal…
Hoje vou mostrar uma função desenvolvida que conta a repetição de um caracter em uma string (por exemplo, a letra i em Terminal de Informação, repete 2 vezes).
Essa função desenvolvida, recebe 3 parâmetros, o primeiro é a string completa, a segunda é o caracter buscado, e a terceira é se irá transformar tudo em maiúsculo antes de comparar.
//Bibliotecas #Include "Protheus.ch" /*/{Protheus.doc} zConta Função que conta quantos caracteres repetem em uma string @type function @author Atilio @since 13/11/2016 @version 1.0 @param cPalavra, character, Palavra a ser considerada @param cCaracter, character, Caracter a ser procurado @param lMaiusculo, logic, Transforma tudo em maiusculo @return nTotal, Total de caracteres encontrados @example u_zConta("Daniel Atilio", "a", .T.) //retorna 2 /*/ User Function zConta(cPalavra, cCaracter, lMaiusculo) Local aArea := GetArea() Local nTotal := 0 Local nAtual := 0 Default cPalavra := "" Default cCaracter := "" //Se transforma tudo em maiusculo If lMaiusculo cPalavra := Upper(cPalavra) cCaracter := Upper(cCaracter) EndIf //Percorre todas as letras da palavra For nAtual := 1 To Len(cPalavra) //Se a posição atual for igual ao caracter procurado, incrementa o valor If SubStr(cPalavra, nAtual, 1) == cCaracter nTotal++ EndIf Next RestArea(aArea) Return nTotal
Bom pessoal, por hoje é só.
Abraços e até a próxima.