Pour l`impression
Transcription
Pour l`impression
Plan Le type String Exercices Plan Le type String Exercices Plan du cours Le type String Exercices Les chaı̂nes de caractères Nour-Eddine Oussous USTL – DEUST TIC-RM 17 novembre 2009 Les chaı̂nes de caractères Plan USTL – DEUST TIC-RM Le type String Exercices Le type String Les chaı̂nes de caractères USTL – DEUST TIC-RM Plan Le type String Exercices Le type String Exemple I Une chaı̂ne de caractères est une suite de caractères mise entre " et " I Si le caractère " doit faire partie de la chaı̂ne, alors il faudra le doubler. I Le type String définit l’ensemble des chaı̂nes de caractères. Dim Dim ch1 ch2 ch1 As String ch2 As String = " Il fait beau aujourd ’ hui ! " = " Il lui dit : " " Ca suffit ! " " " L’exécution de l’instruction : console . writeLine ( ch2 ) affiche Il lui dit : " Ca suffit ! " Les chaı̂nes de caractères USTL – DEUST TIC-RM Les chaı̂nes de caractères USTL – DEUST TIC-RM Plan Le type String Exercices Accès à un caractère Plan I Les caractères qui composent la chaı̂ne sont numérotés dans celle-ci à partir de 0. Ainsi, chaine(i) ou chaine.Chars(i) donne accès au caractère n˚ i de chaine. Les chaı̂nes de caractères Plan USTL – DEUST TIC-RM Le type String Exercices Autres opérations sur une chaı̂ne Changement de la casse : chaine.ToUpper et chaine.ToLower ou Ucase(chaine) et Lcase(chaine) I Rechercher une chaı̂ne T dans une chaı̂ne S : I I InStr(S,T) = 0 si T n’apparaı̂t pas dans S, sinon i tel que S(i)=T(0) InStr(k,S,T) idem avec k la position où commence la recherche Remplacer une chaı̂ne par une autre dans une chaı̂ne donnée : Ch4 = Replace(Ch1,Ch2,Ch3,1,-1) Ici, on remplace la chaı̂ne Ch2 par la chaı̂ne Ch3 dans Ch1 à partir de la position 1 avec −1 comme nombre de remplacements à effectuer (ie tous). Les chaı̂nes de caractères I Longueur d’une chaı̂ne : chaine.Length ou Len(chaine) I Début d’une chaı̂ne : Left(chaine,k), les k premiers caractères I Fin d’une chaı̂ne : Right(chaine,k), les k derniers caractères I Milieu d’une chaı̂ne : Mid(chaine,k,l) les caractères entre les indices k et l Les chaı̂nes de caractères Plan USTL – DEUST TIC-RM Le type String Exercices Comparaison de chaı̂nes I I Exercices Autres opérations sur une chaı̂ne Pour manipuler les chaı̂nes de caractères, on utilise, au choix, les fonctions Visual Basic ou les méthodes de la classe System.String. I Le type String USTL – DEUST TIC-RM I Égalité : on utilise l’opérateur = ou la méthode Equals I Ainsi, chaine1=chaine2 est équivalente à chaine1.Equals(chaine2) I Cas général : StrComp(chaine1,chaine2) ou chaine1.Compare(chaine2) renvoient I I I < 0 si chaine1 < chaine2 = 0 si chaine1 = chaine2 > 0 si chaine1 > chaine2 Les chaı̂nes de caractères USTL – DEUST TIC-RM Plan Le type String Exercices Plan Le type String Exercices Exercices Exercice n˚1 Soient S et T deux chaı̂nes de caractères et k un entier positif ou nul. Écrire une fonction nommée inserer qui renvoie la chaı̂ne obtenue en insérant la chaı̂ne T dans la chaı̂ne S à la position k. EXERCICES Function inserer ( ByVal S As String , ByVal T As String , _ ByVal k As Integer ) As String Dim R As String R = Left (S , k ) R += T R += Right (S , S . Length - k ) Return R End Function Les chaı̂nes de caractères Plan USTL – DEUST TIC-RM Le type String Exercices Exercices Les chaı̂nes de caractères Plan USTL – DEUST TIC-RM Le type String Exercices Exercices Exercice n˚2 Exercice n˚3 Écrire une fonction nommée supprimerEspacesAuDebut paramétrée par une chaı̂ne S, qui renvoie la chaı̂ne obtenue à partir de S en lui supprimant les espaces qui se trouvent au début. Écrire une fonction nommée supprimerEspacesEnFin paramétrée par une chaı̂ne S, qui renvoie la chaı̂ne obtenue à partir de S en lui supprimant les espaces qui se trouvent à la fin. Function s u p p r i m e r E s p a c e s A u D e b u t ( ByVal S As String ) _ As String Dim T As String = " " Dim i As Integer = 0 While ( i < S . Length ) AndAlso ( S ( i ) = " " ) i += 1 End While While i < S . Length T += S ( i ) i += 1 End While Return T End Function Function s u p p r i m e r E s p a c e s E n F i n ( ByVal S As String ) _ As String Dim T As String = " " Dim i As Integer = S . Length - 1 While ( i > 0) AndAlso ( S ( i ) = " " ) i -= 1 End While For j As Integer = 0 To i T += S ( j ) Next Return T End Function Les chaı̂nes de caractères USTL – DEUST TIC-RM Les chaı̂nes de caractères USTL – DEUST TIC-RM Plan Le type String Exercices Exercices Exercice n˚3 Écrire une fonction nommée supprimerEspaces paramétrée par une chaı̂ne S, qui renvoie la chaı̂ne obtenue à partir de S en lui supprimant les espaces qui se trouvent au début et à la fin. Function supprimerEs pac es ( ByVal S As String ) As String Return ( s u p p r i m e r E s p a c e s A u D e b u t _ ( s u p p r i m e r E s p a c e s E n F i n ( S ))) End Function Ainsi, on réutilise les deux fonctions précédentes. Les chaı̂nes de caractères USTL – DEUST TIC-RM