Tipo string

O tipo string é usado para armazenar cadeias de texto. Uma cadeia de texto é uma seqüência de caracteres no formato Unicode com zero no final do mesmo. Uma constante string pode ser atribuída a uma variável string. Uma constante string é uma seqüência de caracteres entre aspas duplas: "This is a string constant".

Se for preciso incluir um aspas duplo (") em uma string, a barra invertida (\) deve ser colocada antes dele. Quaisquer constantes de caractere especial podem ser escritos em uma string, se a barra invertida (\) for digitada antes deles.

Exemplos:

string svar="Esta é uma string";
string svar2=StringSubstr(svar,0,4);
Print("Símbolo de direitos autorais\t\x00A9");
FileWrite(handle,"Esta string contém uma nova linha de caracteres \n");
string MT5path="C:\\Program Files\\MetaTrader 5";

 

Para tornar o código fonte legível, longas strings de constantes podem ser divididas em partes sem a operação de adição. Durante a compilação, estas partes serão combinadas em uma string longa:

//--- Declara uma string constante longa
   string HTML_head="<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Transitional//EN\""
                    " \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd\">\n"
                    "<html xmlns=\"http://www.w3.org/1999/xhtml\">\n"
                    "<head>\n"
                    "<meta http-equiv=\"Content-Type\" content=\"text/html; charset=utf-8\" />\n"
                    "<title>Trade Operations Report</title>\n"
                    "</head>";
//---Saída da string constante no log
   Print(HTML_head);
  }

Métodos incorporados do tipo string

Para manusear strings, você pode usar as funções de strings, as funções de conversão e os métodos intrínsecos do tipo string mostrados na tabela a seguir:

Método string

Análogo

Descrição

Construtor string(const int len)

 

Constrói uma string do comprimento especificado

string[] tanto para leitura como para escrita. O índice deve estar dentro dos limites de BufferSize()

 

Fornece acesso ao elemento da string pelo índice especificado

static string string.Init(const int len, const ushort character);

StringInit

Inicializa uma string com os caracteres especificados e o tamanho especificado

void string.Fill(const ushort character);

StringFill

Preenche uma string com o caractere especificado

int string.Len();

StringLen

Retorna o número de caracteres na string

int string.BufferSize();

StringBufferLen

Retorna o tamanho do buffer alocado para a string

bool string.SetLen(const int new_len);

StringSetLength

Define o comprimento especificado em caracteres da string

bool string.Reserve(const int buffer_len);

StringReserve

Reserva o buffer do tamanho especificado na memória para a string

bool string.Add(const string substring);

StringAdd

Junta a substring especificada desde o final

int string.Concatenate(const scalar val1, const scalar val2...);

StringConcatenate

Forma uma string a partir dos parâmetros passados

array string.Split(const ushort separator, const bool long_separator);

StringSplit

Retorna uma matriz de strings pelo separador dado

int string.Compare(const string str, const bool case_sensivity);

StringCompare

Compara com a string especificada e retorna 1, caso a primeira string seja maior que a segunda; 0, caso as strings sejam iguais; -1 (menos um), caso a primeira string seja menor que a segunda

string string.Substr(const int start_pos, const int len);

StringSubstr

Extrai uma substring de uma posição especificada

int string.Find(const string substr, const int pos);

StringFind

Retorna o número da posição em que a substring começa

void string.ToLower();

StringToLower

Converte todos os caracteres em minúsculas (pequenas)

void string.ToUpper();

StringToUpper

Converte todos os caracteres em maiúsculas (grandes)

int string.TrimLeft();

StringTrimLeft

Elimina caracteres de retorno de carro, espaços e tabulações à esquerda

int string.TrimRight()

StringTrimRight

Elimina caracteres de retorno de carro, espaços e tabulações à direita

void string.Double(const double var, const int digits=8);

DoubleToString

Converte uma string para um número do tipo double

void string.Enum(const enum value);

EnumToString

Converter um valor de enumeração de qualquer tipo em uma string

void string.Integer(const int value, const int str_len=0, const ushort fill=' ');

IntegerToString

Converte uma string para um número do tipo long

void string.CharArray(const uchar array[], const int start_pos=0, const int len=-1, const uint cp=CP_ACP);

CharArrayToString

Converte parte de uma matriz do tipo uchar в строку

void string.ShortArray(const ushort array[], const int start_pos=0, const int len=-1);

ShortArrayToString

Copia parte de uma matriz do tipo ushort в строку

void string.Time(const datetime dt,const int mode=TIME_DATE|TIME_MINUTES);

 TimeToString

Conversão do valor datetime em uma string com formato "yyyy.mm.dd hh:mi".

void string.Format(const string format_str);

StringFormat

Formata os parâmetros recebidos em uma string

Veja também

Funções de Conversão, Funções de String, FileOpen, FileReadString, FileWriteString