CHOMP |
Mastication |
---|---|
Perl |
Syntaxe
chomp VARIABLE |
chomp(LIST) |
chomp |
Paramètres
Nom | Description |
---|---|
VARIABLE | Ce paramètre permet d'indiquer une variable à traiter |
LIST | Ce paramètre permet d'indiquer une liste à traiter |
Retour
Valeur | Description |
---|---|
0 ou supérieur | Ces valeurs permet d'indiquer le nombre d'octets supprimé de toutes les chaînes de caractères. |
Description
Cette fonction permet de supprimer le dernier saut le ligne présent à la fin de la chaîne de caractères.
Remarques
- Cette fonction est plus sûre que chop car elle supprime toute chaîne de caractères de fin correspondant à la valeur actuelle de $/ (également appelée $INPUT_RECORD_SEPARATOR dans le module English). Il retourne le nombre total de caractères supprimés de tous ses paramètres. Il est souvent utilisé pour supprimer la nouvelle ligne de la fin d'un enregistrement d'entrée lorsque vous craignez que l'enregistrement final manque de nouvelle ligne. En mode paragraphe ($/=''), il supprime toutes les nouvelles lignes de la chaîne de caractères. En mode slurp ($/=undef) ou en mode d'enregistrement de longueur fixe ($/ est une référence à un entier ou similaire), chomp n'enlèvera rien.
- Si le paramètre VARIABLE est un hachage, les valeurs du hachage sont écrites, mais pas ses clefs, et il réinitialise chaque itérateur dans le processus.
- Les parenthèses sont nécessaires lorsque vous écrivez quelque chose n'étant pas une simple variable. C'est parce que «chomp $cwd = `pwd`;» est interprété comme «(chomp $cwd) = `pwd`;», plutôt que comme «chomp( $cwd = `pwd` )» auquel vous pourriez vous attendre. De même, «chomp $a, $b» est interprété comme «chomp($a), $b» plutôt que «chomp($a, $b)».
Algorithme
MODULE chomp(variable) SI variable EST NULLE ALORS variable = $_ FIN SI Longueur ← LONGUEUR DE LA CHAINE(variable) SI variable[-1] = Saut de ligne ALORS resultat ← vide BOUCLE POUR i ← 0 JUSQU'A Longueur - 2 resultat ← resultat + variable[i] FIN BOUCLE POUR variable ← resultat FIN SI MODULE chomp(list) BOUCLE POUR CHAQUE ELEMENT list → variable Longueur ← LONGUEUR DE LA CHAINE(variable) SI variable[-1] = Saut de ligne ALORS resultat ← vide BOUCLE POUR i ← 0 JUSQU'A Longueur - 2 resultat ← resultat + variable[i] FIN BOUCLE POUR variable ← resultat FIN SI FIN BOUCLE POUR CHAQUE |
Exemples
Voici quelques exemples typiques de l'utilisation de cette fonction :
on obtiendra le résultat suivant :
UnDeuxTroisL'exemple suivant permet de montrer que avant le AFTER1 il y a un saut de ligne et après le AFTER2 il a été retirer par la fonction chomp en utilisant la variable par défaut «$_» :
on obtiendra le résultat suivant :
Un,Deux
,Trois,
AFTER1
Un
,Deux
,Trois,AFTER2
L'exemple suivant permet d'enlever le saut de ligne à la fin de chacun des éléments du tableau :
on obtiendra le résultat suivant :
valeur1valeur2valeur3AFTERRéférences
La Bible Micro Application HTML & Développement Web, Stefan Munz, Wolfgang Nefzger, 2003, ISBN: 2-7429-2898-7, page 1095
Perl/CGI-Programmation avancée Grand Livre, Edition Micro Application, Rolf D. Stoll, 2001, ISBN: 2742919082, page 114, 196