4D v16.3

Sous chaine

Accueil

 
4D v16.3
Sous chaine

Sous chaine 


 

Sous chaine ( source ; àPartirDe {; nbCars} ) -> Résultat 
Paramètre Type   Description
source  Chaîne in Chaîne de laquelle extraire une sous-chaîne
àPartirDe  Entier long in Position du premier caractère
nbCars  Entier long in Nombre de caractères à extraire
Résultat  Chaîne in Sous-chaîne de source

La fonction Sous chaine retourne la partie de source délimitée par les paramètres àPartirDe et nbCars.

Le paramètre àPartirDe indique le premier caractère de la chaîne à retourner, et nbCars définit le nombre de caractères à retourner.

Si nbCars n'est pas défini ou si le total de àPartirDe plus nbCars est supérieur au nombre de caractères de la chaîne source, Sous chaine retourne tous les caractères de la chaîne à partir du caractère spécifié par àPartirDe. Si àPartirDe est supérieur au nombre de caractères de la chaîne, Sous chaine retourne une chaîne vide ("").

Attention : Si vous utilisez cette commande dans un contexte de texte multistyle, il est nécessaire de convertir les éventuels caractères de fin de ligne Windows ('\r\n') en caractères de fin de ligne simples ('\r') afin que les traitements soient valides. Ce principe est lié au mécanisme de normalisation des fins de lignes de 4D assurant la compatibilité de multi-plate-forme des textes. Pour plus d'informations, reportez-vous au paragraphe Normalisation automatique des fins de lignes.

L'exemple suivant illustre l'utilisation de Sous chaine. Les résultats sont assignés à la variable vRésultat. Les commentaires fournissent la valeur de vRésultat :

 vRésultat:=Sous chaine("08/04/62";4;2) ` vRésultat prend la valeur "04"
 vRésultat:=Sous chaine("Important";1;6) ` vRésultat prend la valeur "Import"
 vRésultat:=Sous chaine(var;2) ` vRésultat retourne tous les caractères sauf le premier

La méthode projet suivante ajoute au tableau de type texte ou alpha, dont le pointeur est passé en second paramètre, les paragraphes tirés du texte passé en premier paramètre :

  ` EXTRAIRE PARAGRAPHES
  ` EXTRAIRE PARAGRAPHES ( Texte ; Pointeur )
  ` EXTRAIRE PARAGRAPHES ( Texte à étudier ; -> Tableau de paragraphes )
 
 C_TEXTE($1)
 C_POINTEUR($2)
 
 $vlElem:=Taille tableau($2->)
 Repeter
    $vlElem:=$vlElem+1
    INSERER DANS TABLEAU($2->;$vlElem)
    $vlPos:=Position(Caractere(Retour chariot);$1)
    Si($vlPos>0)
       $2->{$vlElem}:=Sous chaine($1;1;$vlPos-1)
       $1:=Sous chaine($1;$vlPos+1)
    Sinon
       $2->{$vlElem}:=$1
    Fin de si
 Jusque($1="")



Voir aussi  

Position

 
PROPRIÉTÉS 

Produit : 4D
Thème : Chaînes de caractères
Numéro : 12
Nom intl. : Substring

Commande(s) éligible(s) à l'exécution dans un process préemptif

 
HISTORIQUE 

Créé : < 4D v6

 
UTILISATION DE L'ARTICLE

4D - Langage ( 4D v16)
4D - Langage ( 4D v16.1)
4D - Langage ( 4D v16.2)
4D - Langage ( 4D v16.3)