IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VB 6 et antérieur Discussion :

decouper du texte


Sujet :

VB 6 et antérieur

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    228
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Décembre 2005
    Messages : 228
    Points : 93
    Points
    93
    Par défaut decouper du texte
    bonjour,
    je débute en vb6 et je me demandais comment on pouvait découper un texte contenu dans un controle(je ne sais pas lequel). Je m'explique : je voudrais que l'utilisateur copie un texte (formé de x lignes avec des retours chariots) et moi je dois récupérer chaque ligne et enlevant un ou deux caractères qui sont un chiffre et un tiret si necessaire.

    merci par avance

  2. #2
    Expert éminent sénior


    Profil pro
    Inscrit en
    Juin 2003
    Messages
    14 008
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 14 008
    Points : 20 040
    Points
    20 040
    Par défaut
    manque un peu de détail .. mais regarde les foncitons de chaines en autre :

    - Left
    -Right
    -InStr
    -Replace
    - Mid
    - Trim
    - Split

    ...


  3. #3
    Membre habitué
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    265
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 265
    Points : 181
    Points
    181
    Par défaut
    Oui renseigne toi bien sur la fonction split.
    Elle te permet de récupérer un chaine ou chaque valeur est séparée par un délimiteur dans un tableau.
    split(chaine,delimiteur)

    le delimiteur peut etre un retour chariot soit les caractères Chr(10) ou Chr(13) ou
    alors un tiret.

    exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Dim ligne 
    tabLigne = split(machaine,Chr(13) ) 
     
    For each ligne in tabLigne 
    'suprimer les deux dernier caractères de la ligne par ex.
    'ici je renvoie à partir de la gauche la chaine de départ moins 2 caractères 
    ligne = Left (Cstr(ligne),Len(ligne)-2)
    MsgBox Cstr(ligne)
    Next
    Voila.

    Right c'est pour renvoyer n caractères en partant de la droite.
    Mid c'est pour extraire une sous chaine dans une chaine.
    Instr c'est pour chercher une sous chaine ou caractère dans une chaine,c'est sensible à la caste (minus/maj.
    Tu peux utiliser l'opérateur "like" aussi. if chaine like "*MOTIF*" alors MsgBox "la chaine Motif est dans la chaine".

    Cstr: te permet de convertir une expression en une chaine de caractères.
    Len : te permet de renvoyer la longeur deta chaine.

    Et voila pour le principal.
    Bonne chance.

  4. #4
    Membre éprouvé
    Avatar de méphistopheles
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    1 551
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations forums :
    Inscription : Janvier 2005
    Messages : 1 551
    Points : 1 218
    Points
    1 218
    Par défaut
    il est préférable d'utiliser vbcrlf plutot que chr(13) ou chr(10) uniquement.
    ton code donne:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    dim montext as string.
    dim meslignes() as string
    dim i as integer
    dim textfinal as string
    meslignes=split(montext,vbcrlf)
    for i= 0 to Ubound(meslignes,1)
       if left(meslignes(i),1)= "-" then meslignes(i)=replace(meslignes(i),"-","",,1)
       if isnuméric(left(meslignes(i),1)) then melignes(i)=replace(meslignes(i),left(meslignes(i),1),"",,1)
       textfinal= textfinal & vbcrlf & meslignes(i)
    next i
    msgbox replace(textfinal,vbcrlf,"",,1)

    salut

  5. #5
    Membre régulier
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    228
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Décembre 2005
    Messages : 228
    Points : 93
    Points
    93
    Par défaut
    merci beaucoup ..

  6. #6
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Points : 15 546
    Points
    15 546
    Par défaut
    Hello le Physton,

    il est préférable d'utiliser vbcrlf plutot que chr(13) ou chr(10) uniquement.
    Oui, peut-être... sauf que si tu cherches le caractère vbcrlf dans un mot, VB(A) ne le trouve pas alors qu'il trouve chr(13)

    J'aime bien mettre mon grain de sel

    A+

Discussions similaires

  1. [Débutant] Decouper un texte en plusieurs parties
    Par Jah73 dans le forum VB.NET
    Réponses: 10
    Dernier message: 17/10/2012, 16h52
  2. [HTML 4.0] decouper un text
    Par patricktoulon dans le forum Balisage (X)HTML et validation W3C
    Réponses: 2
    Dernier message: 11/03/2011, 00h25
  3. decoupe de texte en sortie de textarea
    Par shelko dans le forum Langage
    Réponses: 5
    Dernier message: 19/03/2010, 10h15
  4. [PHP 5.2] Decouper un texte
    Par thebarbarius dans le forum Langage
    Réponses: 6
    Dernier message: 12/01/2010, 12h39
  5. decouper un texte en mots
    Par zinou023 dans le forum Langage
    Réponses: 4
    Dernier message: 03/04/2008, 13h23

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo