Busca por um padrão em uma determinada string e atribui um novo texto depois de sua primeira ocorrência
Sintaxe
insertAfter( < @cStringExp >, < cValue >, [ nCount ], [ lReverse ] )
Parâmetros
Nome | Tipo | Descrição | Obrigatório | Referência | Observações |
---|---|---|---|---|---|
cStringExp | String | String que contém o texto para realização de busca | X | X | |
cValue | String | String que contém o valor que será inserido depois de sua ocorrência | X | ||
nCount | Inteiro | Parâmetro opcional, numérico que contém o número de ocorrências que serão inseridas | |||
lReverse | Lógico | Parâmetro opcional, define se a busca será feita da esquerda para direita |
Retorno
Nome | Tipo | Descrição | Observações |
---|---|---|---|
lRet | Lógico | Indica se a inserção foi executada com sucesso. | A nova string é devolvida em cStringExp. Esse parâmetro deve ser passado por referência. |
Observações
Exemplos
Exemplo Construtor
Function u_testInsertAfter() Local cText := "Meu 111.222.333-44" Local cValue := " eh CPF." Local lOk := .F. Local oRegex oRegex := tlpp.regex.Regex():New("[0-9]{3}\.[0-9]{3}\.[0-9]{3}-[0-9]{2}") if (valtype(oRegex) == 'O') lOk := oRegex:insertAfter(@cText,cValue) if (lOk) conout(cText) //Meu 111.222.333-44 eh CPF. Else conout(oRegex:getError()) endif // --------- Testes com nCount cText := "O primeiro 111.222.333-44, o segundo 222.333.111-66 e o terceiro 444.333.111-77" lOk := oRegex:insertAfter(@cText,cValue, 1) if (lOk) conout (cText) //O primeiro 111.222.333-44 eh CPF, o segundo 222.333.111-66 e o terceiro 444.333.111-77 Else conout(oRegex:getError()) endif cText := "O primeiro 111.222.333-44, o segundo 222.333.111-66 e o terceiro 444.333.111-77" lOk := oRegex:insertAfter(@cText,cValue, 2) if (lOk) conout(cText) //O primeiro 111.222.333-44 eh CPF, o segundo 222.333.111-66 eh CPF e o terceiro 444.333.111-77 Else conout(oRegex:getError()) endif // --------- Testes com lReverse cText := "O primeiro 111.222.333-44, o segundo 222.333.111-66 e o terceiro 444.333.111-77" lOk := oRegex:insertAfter(@cText,cValue, 1, .T.) if (lOk) conout(cText) //O primeiro 111.222.333-44, o segundo 222.333.111-66 e o terceiro 444.333.111-77 eh CPF Else conout(oRegex:getError()) endif cText := "O primeiro 111.222.333-44, o segundo 222.333.111-66 e o terceiro 444.333.111-77" lOk := oRegex:insertAfter(@cText,cValue, 2, .T.) if (lOk) conout(cText) //O primeiro 111.222.333-44, o segundo 222.333.111-66 eh CPF e o terceiro 444.333.111-77 eh CPF Else conout(oRegex:getError()) endif Else conout(oRegex:getError()) endif Return .T.
Veja também
Visão Geral
Import HTML Content
Conteúdo das Ferramentas
Tarefas