Subst$
Resultat = Subst$ ( Motif , RemplaceChaine [ , RemplaceChaine ... ] )
Resultat = Subst ( Motif , RemplaceChaine [ , RemplaceChaine ... ] )
Remplace les sous-chaînes
&1
,
&2
, etc. dans un motif avec respectivement, le premier argument, le deuxième argument, et les arguments suivants
RemplaceChaine , et retourne le résultat.
Si
Motif est null, alors une chaîne vide est retournée.
Pour les développeurs en C, ce n'est pas différent d’un
sprintf
simplifié.
Exemples
Print Subst("Gambas is a cool &1", "BASIC")
Cette fonction est très utile quand vous devez concaténer des chaînes qui doivent être traduites.
N'utilisez pas l'opérateur
&
, car l'ordre de concaténation peut changer selon la langue.
Par exemple :
Print Subst(("Today, we are &1 &2"), Format(Now, "mmm"), Format(Now, "d"))
sera traduit ainsi en français :
Print Subst(("Aujourd'hui, nous sommes le &2 &1"), Format(Now, "mmm"), Format(Now, "d"))
Dans Gambas 3, si vous voulez remplacer un argument dont l'indice est supérieur ou égal à dix, vous devez mettre l'argument entre
{
et
}
.
Par exemple:
DIM aArg AS String[]
PRINT Subst("Le neuvième argument est &9 et le dixième est &{10}",
aArg[1], aArg[2], aArg[3], aArg[4], aArg[5], aArg[6], aArg[7], aArg[8], aArg[9], aArg[10])
Cette syntaxe n'est pas obligatoire en Gambas 2, et c'était une erreur. Par exemple, avec le motif de substitution '
&10
' , vous ne pouviez pas faire la différence entre "substitue le 10
eme argument" et "substitue le 1
er argument et ajoute un zéro".
Voir aussi