lang • subst

Subst$

Result = Subst$ ( Pattern , ReplaceString [ , ReplaceString ... ] ) Result = Subst ( Pattern , ReplaceString [ , ReplaceString ... ] )

Substituir strings &1, &2, etc. pelo padrão, primeiro, segundo e subsequente argumentos ReplaceString respectivamente, e retornar o resultado.

Se Pattern for nulo, então, uma string nula será retornada.

Para desenvolvedores C, isto não é diferente de um simples sprintf.

Exemplo

Print Subst("Gambas é legal &1", "BASIC")

Gambas é legal BASIC

Esta função é muito útil quando você necessita concatenar strings que devem ser traduzidas. Não use o operador &, como a ordem de concatenação, este pode mudar com o idioma.

Por exemplo:

Print Subst(("Hoje, é &1 &2"), Format(Now, "mmm"), Format(Now, "d"))

will be translated in french this way:

Print Subst(("Hoje, é o &2 &1"), Format(Now, "mmm"), Format(Now, "d"))

Em Gambas 3, se você deseja substituir argumentos cujos índice é maior ou igual a dez, você deve fechar os argumentos índice entre { e }.

Por exemplo:

DIM aArg AS String[]
PRINT Subst("The 9th argument is &9 and the 10th is &{10}",
  aArg[1], aArg[2], aArg[3], aArg[4], aArg[5], aArg[6], aArg[7], aArg[8], aArg[9], aArg[10])

Essa sintaxe não é obrigatória em Gambas 2, e foi um erro. Por exemplo, com o padrão de substituição, '&10' você não pode diferenciar entre "substituir o 10º argumento" e "substituir o primeiro argumento e adicionar um zero".

Veja também