No vídeo de hoje, vamos demonstrar como utilizar Expressão Regular disponível no TLPPCore.
A dúvida de hoje, nos perguntaram, como podemos utilizar Expressão regular no TL++ (TLPP).
Pensando nisso, montamos esse exemplo, onde demonstramos a utilização desse recurso.
Segue abaixo o vídeo exemplificando:
E abaixo o código fonte desenvolvido:
//Bibliotecas
#Include "tlpp-core.th"
//Declaração da namespace
Namespace custom.terminal.youtube
//Constantes
#Define CRLF Chr(13) + Chr(10) //Carriage Return Line Feed
/*/{Protheus.doc} User Function video0104
Exemplo de como usar Expressão Regular via TLPP
@type Function
@author Atilio
@since 13/03/2024
@see https://tdn.totvs.com/display/tec/RegEx
@obs Exemplo retirado do link https://support.google.com/a/answer/1371417?hl=pt
@example custom.terminal.youtube.u_video0104()
/*/
User Function video0104()
Local aArea := FWGetArea() As Array
Local cExample := "f[a4@][s5\$][t7] +c[a4@][s5\$]h" As Character
Local oRegEx := tlpp.regex.Regex():New("") As Object
Local cSearch := "" As Character
Local lResult := .F. As Logical
Local cMessage := "" As Character
//Faz as buscas, colhe o resultado e incrementa a mensagem
cSearch := "f@st c@sh"
lResult := oRegEx:Matches(cExample, cSearch)
cMessage += "[" + cValToChar(lResult) + "] " + cSearch + CRLF
cSearch := "f@$t c@$h"
lResult := oRegEx:Matches(cExample, cSearch)
cMessage += "[" + cValToChar(lResult) + "] " + cSearch + CRLF
cSearch := "fa$t ca$h"
lResult := oRegEx:Matches(cExample, cSearch)
cMessage += "[" + cValToChar(lResult) + "] " + cSearch + CRLF
cSearch := "FAST CASH"
lResult := oRegEx:Matches(cExample, cSearch)
cMessage += "[" + cValToChar(lResult) + "] " + cSearch + CRLF
cSearch := "Fast Teste Atilio"
lResult := oRegEx:Matches(cExample, cSearch)
cMessage += "[" + cValToChar(lResult) + "] " + cSearch + CRLF
//Exibe o resultado
ShowLog(cMessage)
FWRestArea(aArea)
Return
Bom pessoal, por hoje é só.
Abraços e até a próxima.