Mario Mesquita escreveu:Por isso vc é o mestre, kkkkk Sou todo tosco, já botei no loop...
Mas sempre tem outras situações pra usar LOOP.
Uma legal é pra procurar caractere inválido ou coisa do tipo.
E tem também o FOR EACH
Código: Selecionar todos
FOR EACH cLetra IN @cTexto DESCEND
DO CASE
CASE cLetra $ "0123456789"
CASE cLetra $ "abcdefgh..."
CASE cLetra $ "ABCDEFGH..."
CASE cLetra == "é", cLetra := "e"
CASE cLetra == Chr(13); cLetra := ""
CASE cLetra == Chr(10); cLetra := ""
OTHERWISE
? cLetra, Asc( cLetra ), Substr( cTexto, cLetra:__EnumIndex - 10, 20 )
ENDCASE
NEXT
Detalhe do @ no FOR/EACH, é o que permite atualizar letras em cTexto
O DESCEND, é porque não sei o comportamento se trocar a letra por "", se o FOR/EACH se perde, então vai de trás pra frente.... rs
De um jeito ou de outro, a gente resolve.
E se não existir função praquilo, a gente inventa.
Mas de nada adiantaria conhecer a função, se não soubesse desse detalhe que mencionou sobre assinatura.
No final, todo mundo é mestre, cada um em uma coisa, e assim, todo mundo vai ensinando e aprendendo.