DELETE
Deleta L caracteres da string IN a partir da posição P. É uma função pura (sem estado; retorna o resultado diretamente).
Biblioteca: IEC_STD · Namespace: IEC · Tipo: função
Função
DELETE
+-------------+
ANY_STRING ---|IN |--- ANY_STRING
| |
ANY_INT ---|L |
| |
ANY_INT ---|P |
+-------------+
Esta função aceita como parâmetros de entrada uma string do grupo ANY_STRING (IN)
e dois valores do grupo ANY_INT (L e P), removendo L caracteres da string
IN a partir da posição P. O tipo de retorno é sempre do grupo ANY_STRING.
Nota
Caso a string IN seja inválida a string de saída não será alterada e
o tipo de erro gerado pode ser obtido através da função GET_SYSTEM_ERR.
Caso o valor de L seja menor que zero a string de saída não será alterada
e o tipo de erro gerado pode ser obtido através da função GET_SYSTEM_ERR.
Caso o valor de P seja menor que L ou maior que o tamanho da string IN
a string de saída não será alterada e o tipo de erro gerado pode ser obtido através
da função GET_SYSTEM_ERR.
Caso a operação resulte em uma string maior que a capacidade da string de saída o processo será cancelado e o tipo de erro gerado pode ser obtido através da função GET_SYSTEM_ERR.
Parâmetros
Nome |
Direção |
Tipo |
Faixa / Unidade |
Descrição |
|---|---|---|---|---|
IN |
IN |
ANY_STRING |
— |
String de entrada da qual os caracteres serão removidos. |
L |
IN |
ANY_INT |
— |
Número de caracteres a serem removidos. |
P |
IN |
ANY_INT |
— |
Posição inicial de remoção (contada a partir de 1). |
Retorno / Saídas
Tipo |
Faixa / Unidade |
Descrição |
|---|---|---|
ANY_STRING |
— |
String resultante da remoção de |
Observações
Caso a string
INseja inválida a string de saída não será alterada e o tipo de erro gerado pode ser obtido através da função GET_SYSTEM_ERR.Caso o valor de
Lseja menor que zero a string de saída não será alterada e o tipo de erro gerado pode ser obtido através da função GET_SYSTEM_ERR.Caso o valor de
Pseja menor queLou maior que o tamanho da stringINa string de saída não será alterada e o tipo de erro gerado pode ser obtido através da função GET_SYSTEM_ERR.Caso a operação resulte em uma string maior que a capacidade da string de saída o processo será cancelado e o tipo de erro gerado pode ser obtido através da função GET_SYSTEM_ERR.
Exemplo
Clique aqui para baixar a tabela de variáveis
Código ST
VAR
value_in1 : STRING; (* valor do operando de entrada 1 *)
value_out : STRING; (* valor resultante da operação *)
value_l : INT; (* tamanho a ser removido *)
value_p : INT; (* posição de inserção *)
END_VAR
(* Exemplo de ativação da função dentro da POU *)
(* ... *)
value_in1 := 'ABCDEF'; (* Valor a ser fornecido *)
value_l := 2; (* Valor a ser fornecido *)
value_p := 3; (* Valor a ser fornecido *)
value_out := DELETE(IN := value_in1, L := value_l, P := value_p);
(* resultado value_out = 'ABEF' *)
(* ... *)