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 :

point commun entre 2 textes


Sujet :

VB 6 et antérieur

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Inscrit en
    Février 2007
    Messages
    327
    Détails du profil
    Informations forums :
    Inscription : Février 2007
    Messages : 327
    Par défaut point commun entre 2 textes
    Salut tout le monde!

    Pour avoir tous les points communs entre 2 textes, j'ai pensé à chercher au moins 3 caractères communs (et plus). (Et puis) le problème c'est que ça ne donne que les 2 premières parties communes. Comment faire pour avoir toutes les parties communes?

    Merci.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    t1 = Text1.Text
    t2 = Text2.Text
    d = 1
     
    Do
    a = d + 3
    If InStr(t1, Mid(t2, d, a)) > 0 Then
        Do
        If InStr(t1, Mid(t2, d, a)) > 0 Then
            a = a + 1
            x = 0
        Else
            a = a - 1
            List1.AddItem Mid(t2, d, a)
            d = a + 1
            y = 0
            x = 1
        End If
        Loop While x = 0
    Else
    d = d + 1
    y = 1
    End If
    Loop While y = 0
    [Etit : par zaza] C'est 'et plus' ou 'Et puis' ? Je crois que c'est 'Et puis', à cause du 'au moins', mais vu la syntaxe de départ, je ne sais plus... J'enlèverai cet ajout quand tu auras spécifié.

  2. #2
    Expert confirmé
    Avatar de ProgElecT
    Homme Profil pro
    Retraité
    Inscrit en
    Décembre 2004
    Messages
    6 132
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 69
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Décembre 2004
    Messages : 6 132
    Par défaut
    Cette solution peut être
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    Private Sub Form_Load()
    Text1 = "pour faire des essais avant de proposer"
    Text2 = "Les essais vont'il être bon, à faire"
    Me.Visible = True: Me.Refresh
    Dim Metableau1() As String
    Dim Metableau2() As String
    Metableau1 = Split(Text1, " ")
    Metableau2 = Split(Text2, " ")
    Dim T As Integer, U As Integer
    For T = 0 To UBound(Metableau1)
     For U = 0 To UBound(Metableau2)
      If Metableau1(T) = Metableau2(U) Then
       MsgBox Metableau1(T)
      End If
     Next U
    Next T
    End Sub
    :whistle:pourquoi pas, pour remercier, un :plusser: pour celui/ceux qui vous ont dépannés.
    saut de ligne
    OOOOOOOOO👉 → → Ma page perso sur DVP ← ← 👈

  3. #3
    Inactif  

    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    4 555
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 4 555
    Par défaut
    Bonsoir (et un salut à Progelect),

    J'attends que les choses soient mieux et complètement définies ...

    Quid, par exemple, si une chaîne est trois fois dans une "phrase" et 1 fois dans l'autre ?

    Edit : et ce n'est pas tout !
    Quid de la casse ?
    Si ce sont des mots, qui sont cherchés, quid des ponctuations ?
    De quid en quid, on risque d'aller fort loin dans le nombre des quids (et je trouve qu'il est dommage que nous ayons à penser à ces aspects qui auraient dû être exposés d'emblée).

  4. #4
    Membre éclairé
    Inscrit en
    Février 2007
    Messages
    327
    Détails du profil
    Informations forums :
    Inscription : Février 2007
    Messages : 327
    Par défaut
    Voillà : je suis arrivé à ce stade, mais c'est pas encore complet si quelque un pouvait m'aider. Merci

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    Private Sub Command1_Click()
    t1 = Text1.Text
    t2 = Text2.Text
    n = 0
    d = 1
    a = d + 1
    Do
    If InStr(t1, Mid(t2, d, a)) > 0 Then
        a = a + 1
    Else
        List1.AddItem Mid(t2, d, a - 1)
        d = a
        a = d + 1
    End If
    If a > Len(t2) Then Exit Do
    Loop While n = 0
    End Sub

  5. #5
    Inactif  

    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    4 555
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 4 555
    Par défaut
    Je t'aiderai (en ce qui me concerne) bien volontiers, mais non sans que tu aies au préalable apporté toutes les précisions nécessaires (lire mon message précédent).

    Ce n'est pas ce à quoi tu es arrivé, qui nous intéresse, mais ce que tu cherches à faire, avec toutes les précisions (définies clairement et complètement) à ce sujet.

    Merci.

  6. #6
    Membre éclairé
    Inscrit en
    Février 2007
    Messages
    327
    Détails du profil
    Informations forums :
    Inscription : Février 2007
    Messages : 327
    Par défaut
    t1="abcdefg-hijklmnopqrst--uvwxyz-123456-2547"
    t2="abcdefghijklmnopqrstuvwxyz123456789"

    voici ce que ca donne dans la list1
    abcdefg
    hijklmnopqrst
    nopqrstuvwxyz1
    opqrstuvwxyz123
    pqrstuvwxyz12345
    qrstuvwxyz1234567
    rstuvwxyz123456789
    stuvwxyz123456789
    tuvwxyz123456789
    uvwxyz123456789
    vwxyz123456789
    wxyz123456789
    xyz123456789
    yz123456789
    z123456789
    123456789
    23456789
    3456789
    456789
    56789
    6789
    789
    89





    ce que je veux c'est de voire tous les point commune entre les deux trext a fin de determiner ce que a changer

    merci

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Difference et point commun entre talend et SAP
    Par kamahm dans le forum Débats
    Réponses: 1
    Dernier message: 30/04/2013, 10h11
  2. Réponses: 2
    Dernier message: 12/02/2012, 13h47
  3. Recherche de points communs entre objets
    Par pysnoo dans le forum Algorithmes et structures de données
    Réponses: 1
    Dernier message: 24/04/2009, 14h39
  4. Point commun entre python et java
    Par mali_67 dans le forum Général Python
    Réponses: 5
    Dernier message: 25/04/2008, 10h42
  5. communication entre programmes
    Par jérôme dans le forum C
    Réponses: 12
    Dernier message: 16/04/2002, 08h05

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