Accueil
Accueil
Le
Club
Delphi
Kylix
C
C++
Java
J2EE
DotNET
& C#
Visual
Basic
Access
Pascal
Dev
Web
PHP
ASP
XML
UML
SQL
SGBD
Win
Linux
Autres

        


Comment connaître la longueur d'une chaîne ?
auteur : Hdd34
Le Pascal est doté en standard de la fonction Length(S: string): Byte pour connaître la longueur d'une chaîne.


var S: string; begin S := ''; while Length(S) < 10 do S := S + '!'; end;

Comment accéder à un caractère précis d'une chaîne de caractères ?
auteur : Hdd34
Les chaînes de caractères de type string du Pascal peuvent être assimilées à des tableaux de caractères. Ainsi, comme pour ces derniers, il est possible de les indexer en précisant à la fin la position du caractère auquel on souhaite accéder, le premier caractère portant l'index 1.

Ainsi, si on considère la chaîne s: string, pour connaître le 5ème caractère, on écrira s[5] (de type Char).

L'exemple suivant affiche une chaîne en séparant chaque caractère par un tiret :


var s: string; i: Byte; begin s := 'ABCDEF'; for i := 1 to Length(S) do Write(s[i], '-'); end;

Comment ajouter deux chaînes ou plus ?
auteur : Hdd34
Le Pascal le plus strict recommande d'utiliser la fonction Concat(s1, s2, ..., sn: string): string pour ajouter plusieurs chaînes de caractères entre elles :


var s: string; begin s := Concat('Ceci ', 'est ', 'un ', 'exemple.'); end;

Néanmoins, l'usage et la praticité font que l'on utilise tout simplement l'opérateur + pour ajouter plusieurs chaînes. Le résultat est exactement identique à Concat :


var s: string; begin s := 'Ceci ' + 'est ' + 'un ' + 'exemple.'; end;

Comment connaître la position d'une sous-chaîne dans une chaîne ?
auteur : Hdd34
Pour connaître la position de la premirèe occurence d'une sous-chaine (qui peut s'avérer n'être qu'un caractère) dans une chaîne, il faut se servir de la fonction Pos(SousChaine, Chaine: string): Byte.

Si la sous-chaîne n'est pas trouvée, alors Pos renverra 0.


var i: Byte; begin i := Pos('def', 'abcdefgh'); { i = 4 } end;

Remarque :
  • Pos ne renvoie que la première occurence. Si la sous-chaîne apparaît plusieurs fois, alors les autres occurences seront ignorées. Pour remédier à ce problème, il faut soit supprimer le début de la chaîne, soit créer sa propre fonction de recherche.

lien : Comment accéder à un caractère précis d'une chaîne de caractères ?
lien : Comment supprimer ou copier une partie d'une chaîne de caractères ?

Comment supprimer ou copier une partie d'une chaîne de caractères ?
auteur : Hdd34
  • Pour copier une partie d'une chaîne, on se sert de la fonction Copy(S: string; Debut, Len: Byte)Debut indique le caractère à partir duquel on souhaite copier la chaîne et Len le nombre de caractères à copier.

var s: string; begin s := Copy('ABCDEF', 2, 3); { s = 'BCD' } end;
  • Pour supprimer tout ou partie d'une chaîne, on se sert de la procédure Delete(var S: string; Debut, Len: Byte), où Len indique le nombre de caractères à supprimer en commençant à la position Debut :


var s: string; begin s := 'ABCDEF'; Delete(s, 2, 3); { s = 'AEF' } end;

Comment formater une chaîne de caractères avec des paramètres ?
auteur : Hdd34
Pour formater une chaîne de caractères, à la manière de printf en C, on peut utiliser la procédure Format de l'unité Drivers sous Turbo Pascal. Si jamais on ne dispose pas de Turbo Pascal, alors on peut utiliser le code source disponible en téléchargement ci-dessous.

lien : Comment formater l'affichage d'un nombre réel ?
téléchargement : Routine Format de formatage de chaînes

        

Consultez les autres F.A.Q's

Les sources présentés sur cette pages sont libre de droits, et vous pouvez les utiliser à votre convenance. Par contre cette page de présentation de ces sources constitue une oeuvre intellectuelle protégée par les droits d'auteurs. Copyright ©2004  Developpez LLC. Tout droits réservés Developpez LLC. Aucune reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez LLC. Sinon vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E de dommages et intérets. Cette page est déposée à la SACD.

Vos questions techniques : forum d'entraide Accueil - Publiez vos articles, tutoriels et cours
et rejoignez-nous dans l'équipe de rédaction du club d'entraide des développeurs francophones
Nous contacter - Copyright 2000..2005 www.developpez.com