cs_DAN1
Messages postés78Date d'inscriptionsamedi 12 avril 2003StatutMembreDernière intervention19 juillet 2017
-
7 avril 2017 à 16:03
scoob79
Messages postés27Date d'inscriptionmercredi 20 janvier 2010StatutMembreDernière intervention 5 septembre 2018
-
13 août 2018 à 10:04
Bonjour à tous .
Malgré le passage@visuelbasic.net je continue à utiliser les fonctions vb.right et vb.left provenant de VB 6.
J'ai bien compris qu'il existe l'instruction suivante :
qui me permet de récupérer les quatre premiers caractères de dd = test.Substring(4)
Et si j'ai tout compris pour récupérer les quatre derniers caractères de droite il faudrait que je saisisse
dd = test.Substring(5,4)
si je considère que la zone test comprend neuf caractères.
N'y aurait-il pas quelque chose de plus simple pour récupérer les X ce dernier caractère de droite ?
Je sais bien que ma question est un peu basique mais je ne comprends pas pourquoi on n'a pas pu conserver les anciennes instructions left et Right
vb95
Messages postés3508Date d'inscriptionsamedi 11 janvier 2014StatutContributeurDernière intervention 2 septembre 2024169 7 avril 2017 à 17:30
Bonjour
La méthode Substring a deux paramètres
- le premier indique la position du premier caractère de la sous-chaine à prendre comme résultat ( attention les positions commencent à 0)
- le second paramètre ( optionnel) indique le nombre de caractères à prendre en compte pour le résultat . Si ce paramètre est omis tout le reste de la chaine à partir de la position du premier caractère est prise en compte .
Ainsi
Dim chaine as String = "Visual Studio"
Dim SousChaine as String = Chaine.Substring(4) renvoit "al Studio"
Dim SousChaine as String = Chaine.Substring(8) renvoit "Studio"
Dim SousChaine as String = Chaine.Substring(2,4) renvoit "sual"
Dim SousChaine as String = Chaine.Substring(0,6) renvoit "Visual"
Maintenant si l'on sait connait pas la longueur de la chaine on peut se servir de la propriété Length qui renvoie le nombre de caractères de la chaine pour avoir la position de départ de la sous-chaine .
Dim SousChaine as String = Chaine.Substring(Chaine.Length - 4) renverra toujours les 4 derniers caractères de la chaine Chaine quelle que soit sa longueur ( il est évident que la chaine ne peut être d'une longueur inférieure à 4 sinon ça plante )
Maintenant pourquoi ne pas avoir gardé Left et Right de VB 6 : sûrement pour uniformiser avec C# qui utilise aussi la méthode Substring ( et n'oublions aussi que C# et VB NET dans la suite Visual Studio utilise le même FrameWork : la bibliothèque de classes autour de laquelle s'articule Visual Studio Net)
Whismeril
Messages postés19142Date d'inscriptionmardi 11 mars 2003StatutContributeurDernière intervention12 septembre 2024660 7 avril 2017 à 23:26
Bonsoir,
cela vient peut être aussi du fait qu'en Basic, la string n’était pas traitée comme dans de nombreux autres langages, à savoir un hybride entre une variable à part entière et un tableau de caractères
Dim toto As Char = "Coucou"(3)
toto vaut "c"c
On peut donc y appliquer tous les outils des collections
Dim envers As String = String.Join("", "Coucou".Reverse())
scoob79
Messages postés27Date d'inscriptionmercredi 20 janvier 2010StatutMembreDernière intervention 5 septembre 2018 10 août 2018 à 13:19
plus simple
Res = Chaine.Substring(10)
Whismeril
Messages postés19142Date d'inscriptionmardi 11 mars 2003StatutContributeurDernière intervention12 septembre 2024660 Modifié le 10 août 2018 à 14:04
Et Bonjour c'est trop dur à écrire?
C'est justement substring qu'il voulait éviter d'utiliser à l'époque....
au plus simple j'étais au travaille
PS : bonsoir
PS2 : sinon vous et moi venons de perdre tu temps (Temps = argent pour le gens qui travaille)
Whismeril
Messages postés19142Date d'inscriptionmardi 11 mars 2003StatutContributeurDernière intervention12 septembre 2024660
>
Pseudo...
11 août 2018 à 10:24
Non moi je n'ai pas perdu de temps....
Ça fait parti de mon bénévolat de Contributeur, d'essayer de mettre de l'ordre dans les discussions.
scoob79
Messages postés27Date d'inscriptionmercredi 20 janvier 2010StatutMembreDernière intervention 5 septembre 2018 13 août 2018 à 10:04