La fonction substr

Résolu/Fermé
sakob Messages postés 39 Date d'inscription lundi 13 juillet 2009 Statut Membre Dernière intervention 18 décembre 2011 - 12 août 2009 à 15:05
sakob Messages postés 39 Date d'inscription lundi 13 juillet 2009 Statut Membre Dernière intervention 18 décembre 2011 - 13 août 2009 à 16:33
Bonjour,
j'ai du mal à connaitre le vré role de la procedure substr

voici le programme que j'ai copié colé mé j'ai du mal parfoi a connaitre certain choix

generate shours= substr(d,1,2) "d =01:45:00"
comme resultat il m'a donné 01 ************la j'ai compri***********
ensuite
generate sminute=substr(d,4,2)
comme resultat j'ai 45
***la question c'est pk le 4 qui se trouve dans la parenthse du substr*****
et enfin
generate sseconde=substr(d,7,2)

j'ai obtenu 00
********meme kestion pk le 7********
merci de votre reponse

3 réponses

jeangilles Messages postés 816 Date d'inscription samedi 21 juin 2008 Statut Membre Dernière intervention 17 juillet 2012 185
12 août 2009 à 15:11
generate sminute=substr(d,4,2)


tu démarres du caractère 4, et tu prends 2 caractères

donc ca fait bien 45

de même pour le 7 qui retourne 00
0
sakob Messages postés 39 Date d'inscription lundi 13 juillet 2009 Statut Membre Dernière intervention 18 décembre 2011
13 août 2009 à 11:55
merci jeangilles
c pa trop difficile comme j l croyé
0
kij_82 Messages postés 4088 Date d'inscription jeudi 7 avril 2005 Statut Contributeur Dernière intervention 30 septembre 2013 857
12 août 2009 à 15:12
Bonjour,

Fonction substr :
- premier paramètre = chaine de caractère d'origine
- second paramètre = indice dans la chaine de caractère à partir duquel on a récupérer la "sous chaine"
- troisième paramètre = longueur de la sous chaine à retirer

Conclusion, si l'indice 1 pointe juste devant le premier 0 (celui des heures) de ta chaine "=01:45:00", alors l'indice "4" pointera juste devant le "4", et l'indice "7" pointera juste devant le "0" des secondes

Cqfd.
0
sakob Messages postés 39 Date d'inscription lundi 13 juillet 2009 Statut Membre Dernière intervention 18 décembre 2011
13 août 2009 à 12:04
a ok je voi
merci bocou
0
Nyctaclope Messages postés 5315 Date d'inscription dimanche 6 avril 2008 Statut Membre Dernière intervention 11 décembre 2022 1 250
12 août 2009 à 15:18
Bonjour !
substr(d,4,2) : la (sous)chaine de "d" commençant au 4ème caractère de "d", et de longueur 2 = "45"
substr(d,7,2) : la (sous)chaine de "d" commençant au 7ème caractère de "d", et de longueur 2 = "00"
A+
Nyctaclope
0
sakob Messages postés 39 Date d'inscription lundi 13 juillet 2009 Statut Membre Dernière intervention 18 décembre 2011
13 août 2009 à 12:06
je voi merci
mé pk tu parle de 7eme caractere
il ya 6 caracteres au total non oubien les ": " sont oci dé caracteres
merci kan meme pour la reponse
0
Nyctaclope Messages postés 5315 Date d'inscription dimanche 6 avril 2008 Statut Membre Dernière intervention 11 décembre 2022 1 250 > sakob Messages postés 39 Date d'inscription lundi 13 juillet 2009 Statut Membre Dernière intervention 18 décembre 2011
13 août 2009 à 14:59
Re
Oui, les ":" sont "aussi" des caractères ...
A+
Nyctaclope
0
sakob Messages postés 39 Date d'inscription lundi 13 juillet 2009 Statut Membre Dernière intervention 18 décembre 2011 > Nyctaclope Messages postés 5315 Date d'inscription dimanche 6 avril 2008 Statut Membre Dernière intervention 11 décembre 2022
13 août 2009 à 16:33
merci nyctaclope
c gentil
la je compren maintena
0