MID
Retorna um número L de caracteres da string de entrada 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
MID
+-------------+
ANY_STRING ---|IN |--- ANY_STRING
| |
ANY_INT ---|L |
| |
ANY_INT ---|P |
+-------------+
Esta função retorna L caracteres da string IN, iniciando na posição P.
Nota
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. |
L |
IN |
ANY_INT |
— |
Número de caracteres a partir da posição inicial. |
P |
IN |
ANY_INT |
— |
Posição inicial da string a ser obtida. |
Retorno / Saídas
Tipo |
Faixa / Unidade |
Descrição |
|---|---|---|
ANY_STRING |
— |
String resultante da operação. |
Exemplo
Clique aqui para baixar a tabela de variáveis
Código ST
VAR
value_in : STRING; (* valor do operando de entrada *)
value_out : STRING; (* valor resultante da operação *)
value_l : INT; (* tamanho da string retornada *)
value_p : INT; (* posição inicial da string a ser retornada *)
END_VAR
(* Exemplo de ativação da função dentro da POU *)
(* ... *)
value_in := 'ABCDE'; (* STRING a ser fornecido *)
value_l := 3; (* Valor a ser fornecido *)
value_p := 2; (* Valor a ser fornecido *)
value_out := MID(IN := value_in, L := value_l, P := value_p);
(* resultado value_out = 'BCD' *)
(* ... *)