next up previous contents index
Next: 3.3.2 Les listes (*) Up: Autres types de données Previous: Autres types de données

Les chaînes de caractères

Dans l'exemple sur la construction case, la variable y est du type chaîne de caractères. Dans le langage   Scilab elles sont délimitées par des apostrophes ou des guillemets (anglais), et lorsqu'une chaîne contient un tel caractère, il faut le doubler. Ainsi pour affecter à la variable est_ce_si_sur, la chaîne :
 
Scilab c'est "cool" ?

on utilisera :

-->est_ce_si_sur = "Scilab c''est ""cool"" ?"

ou bien :

-->est_ce_si_sur = 'Scilab c''est ""cool"" ?'

On peut aussi définir des matrices de chaînes de caractères :

-->Ms = ["a" "bc" "def"]
 Ms  =
 
!a  bc  def  !
 
-->size(Ms)  // pour obtenir les dimensions
 ans  =
 
!   1.    3. !
 
-->length(Ms)                                                    
 ans  =
 
!   1.    2.    3. !

Noter que length n'a pas le même comportement que sur une matrice de nombres : pour une matrice de chaînes de caractères M, length(M) renvoie une matrice d'entiers de même format que M où le coefficient en position (i,j) donne le nombre de caractères de la chaîne en position (i,j).

La concaténation de chaînes de caractères utilise simplement l'opérateur + :

-->s1 = 'abc'; s2 = 'def'; s = s1 + s2 
s =
 
 abcdef

et l'extraction se fait via la fonction part:

-->part(s,3) 
ans =
 
 c
 
-->part(s,3:4) 
ans =
 
 cd

Le deuxième argument de la fonction part est donc un vecteur d'indices (ou un simple scalaire entier) désignant les numéros des caractères que l'on veut extraire.



Pincon Bruno
6/23/2000