BiS_DelSpaceL

Fonction Catégorie Version
BIS 08 BiS_DelSpaceL Gestion de Chaînes 1.0 - Janvier 2007

Description

But Suppression des espaces au début d'une chaîne.
Prototype (BiS_DelSpaceL Texte_Cible )
Argument Texte_Cible - Le texte à modifier - chaîne -
Retours La chaîne modifiée
Var. globales Néant
Description Supprime tous les blancs (ou espaces) qui pourraient se trouver à gauche (donc au début) d'une chaîne de texte.
Notes Si l'argument n'est pas une chaîne, celui-ci est retourné sans changement.
Pour supprimer les blancs à droite, utilisez la fonction BiS_DelSpaceR ;
Pour supprimer les blancs à droite et à gauche, utilisez la fonction BiS_DelSpace.
Exemples

Commande: (BiS_DelSpaceL "   Fiche BiS 08  ")
	retourne	"Fiche BiS 08  "

Commande: (setq T1 "       Texte avec blancs   ")
	"       Texte avec blancs   "
Commande: (BiS_DelSpaceL T1)
	retourne	"Texte avec blancs   "
Commande: (BiS_DelSpaceL "   ")	retourne 	""
Commande: (BiS_DelSpaceL bb)	retourne 	nil

Commande: (setq Nb1 1.23456)
Commande: (BiS_DelSpaceL Nb1)
	retourne	1.23456

Commande: (setq L1 '(20 "  texte  "))
Commande: (BiS_DelSpaceL L1)
	retourne	(20 "  texte  ") 
   (L1 est une liste et non pas une chaîne - 
   La liste est retournée telle quelle, les éléments à 
   l'intérieur de la liste n'étant pas considérés.)
 

La fonction


  1-  (defun BiS_DelSpaceL (*Text)

  2-    (if (= (type *Text) 'STR)
  3-        (progn
  4-           (while (and
  5-		     		(> (strlen *Text) 0)
  6-		     		(= (substr *Text 1 1) " ")
  7-                  )
  8-		          (setq *Text (substr *Text 2))
  9-           )
 10-        )
 12-    )
 13-    *Text
 14-  ) 


Ligne 2 : Vérifie si l'argument est une chaîne,  et si oui,
Ligne 4 :   Répète tant que
Ligne 5 :     - L'argument *Text est plus grand que zéro (au cas ou la chaîne serait vide)
Ligne 6 :     - Le 1er caractère de *Text est un espace (ou blanc),	     
Ligne 8 :     Soustrait le 1er caractère à *Text
Ligne 13 :    Retourne  la chaîne modifiée ou non (si ce n'est pas une chaîne)

Type : Renvoie le type de l'élément spécifié (*Text)
While : Evalue une expression test (ici, les 2 lignes suivantes), et si elle est vraie, évalue d'autres expressions (ici, la ligne 8) ; répète le processus.
Strlen : Renvoie le nombre de caractères présents dans la chaîne *Text (nombre entier).
Substr : Ligne 6 : extrait de la chaîne *Text le 1er caractère (chaîne de longueur 1 caractère commençant au 1er caractère)
Ligne 8 : extrait de la chaîne *Text la chaîne démarrant au 2ème caractère jusqu'à la fin (la longueur n'est pas précisée).