4D v14.3Sous chaine |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
4D v14.3
Sous chaine
|
Sous chaine ( source ; àPartirDe {; nbCars} ) -> Résultat | ||||||||
Paramètre | Type | Description | ||||||
source | Chaîne |
![]() |
Chaîne de laquelle extraire une sous-chaîne | |||||
àPartirDe | Entier long |
![]() |
Position du premier caractère | |||||
nbCars | Entier long |
![]() |
Nombre de caractères à extraire | |||||
Résultat | Chaîne |
![]() |
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 .
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="")
Produit : 4D
Thème : Chaînes de caractères
Numéro :
12
Nom intl. : Substring
Créé : < 4D v6
4D - Langage ( 4D v11 SQL Release 6)
4D - Langage ( 4D v14 R3)
4D - Langage ( 4D v14 R2)
4D - Langage ( 4D v14.3)
4D - Langage ( 4D v14 R4)
Parent de : Sous chaine ( 4D v13.5)