Vous êtes sur le site Web historique de la documentation de 4D. Les documentations sont progressivement déplacées vers developer.4d.com |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
4D v20 R7
Remplacer chaine
|
Remplacer chaine ( source ; obsolète ; nouveau {; combien}{; *} ) -> Résultat | ||||||||
Paramètre | Type | Description | ||||||
source | Chaîne |
![]() |
Chaîne de départ | |||||
obsolète | Chaîne |
![]() |
Caractère(s) à remplacer | |||||
nouveau | Chaîne |
![]() |
Chaîne de remplacement (si chaîne vide, toutes les occurrences sont effacées) | |||||
combien | Entier long |
![]() |
Nombre de remplacements à effectuer | |||||
* | Opérateur |
![]() |
Si passé : évaluation basée sur les codes de caractères | |||||
Résultat | Chaîne |
![]() |
Chaîne résultante | |||||
Remplacer chaine retourne une chaîne de caractères résultant du remplacement dans source de obsolète par nouveau.
Si nouveau est une chaîne vide (""), Remplacer chaine supprime chaque occurrence de obsolète dans source.
Si combien est spécifié, Remplacer chaine ne remplace que le nombre d'occurrences de obsolète spécifié, à partir du premier caractère de source. Si combien est omis, toutes les occurrences de obsolète sont remplacées.
Si obsolète est une chaîne vide, Remplacer chaine retourne source inchangé.
Par défaut, la commande effectue des comparaisons globales, tenant compte des particularités linguistiques et des lettres pouvant s'écrire avec un ou plusieurs caractères (par exemple æ = ae). En revanche, elle n'est pas diacritique (a=A, a=à...) et ne tient pas compte des caractères "ignorables" tels que les caractères dont le code est < 9 (spécification Unicode).
Pour modifier ce fonctionnement, passez l'astérisque * en dernier paramètre. Dans ce cas, les comparaisons sont effectuées sur la base des codes des caractères. Vous devez donc passer le paramètre * :
Note : Dans 4D v15 R3 et suivantes, une optimisation importante a été apportée à l'algorithme utilisé par cette commande lorsque vous remplacez une chaîne par une autre de taille différente, quelle que soit la syntaxe utilisée. Il en résulte une accélération significative des traitements dans ce contexte.
L'exemple suivant illustre l'utilisation de Remplacer chaine. Les résultats sont affectés à la variable vRésultat. Les commentaires fournissent la valeur de la variable :
vRésultat:=Remplacer chaine("Ville";"ll";"d") ` vRésultat est égal à "Vide"
vRésultat:=Remplacer chaine("Table";"b";"") ` vRésultat est égal à "Tale"
vRésultat:=Remplacer chaine(var;Caractere(Tabulation);",";*) ` Remplacer toutes les tabulations par des virgules
L'exemple suivant élimine les retours chariot et les tabulations du texte contenu dans la variable vRésultat :
vRésultat:=Remplacer chaine(Remplacer chaine(vRésultat;Caractere(Retour chariot);"";*);Caractere(Tabulation);"";*)
L'exemple suivant illustre le rôle du paramètre * dans le cadre d'une évaluation diacritique :
vRésultat:=Remplacer chaine("Crème brûlée";"Brulee";"caramel") `vRésultat est égal à "Crème caramel"
vRésultat:=Remplacer chaine("Crème brûlée";"Brulee";"caramel";*) `vRésultat est égal à "Crème brûlée"
Produit : 4D
Thème : Chaînes de caractères
Numéro :
233
Nom intl. : Replace string
Modifié : 4D v11 SQL Release 1
Modifié : 4D v15 R3
4D - Langage ( 4D v20 R7)