Comparer deux strings
Fermé
Fab121205
Messages postés
81
Date d'inscription
dimanche 26 juillet 2015
Statut
Membre
Dernière intervention
20 mars 2022
-
26 juin 2018 à 10:30
Reivax962 Messages postés 3672 Date d'inscription jeudi 16 juin 2005 Statut Membre Dernière intervention 11 février 2021 - 26 juin 2018 à 10:47
Reivax962 Messages postés 3672 Date d'inscription jeudi 16 juin 2005 Statut Membre Dernière intervention 11 février 2021 - 26 juin 2018 à 10:47
Bonjour, je me heurte à un problème. J'aurais besoin de comparer deux chaînes de caractères pour en resortir les mots en commun c'est à dire les mots contenus dans les deux strings. Est-ce que cela est possible sans passer par les expressions régulières avec preg_match sur chaque mot car si les strings sont longues cela prend trop de temps.
Merci Fab1205
Merci Fab1205
A voir également:
- Comparer deux strings
- Deux ecran pc - Guide
- Comment faire deux colonnes indépendantes dans word - Guide
- Itinéraire google map entre deux adresses - Guide
- Deux whatsapp sur un téléphone - Guide
- Nombre de jours entre deux dates excel - Guide
1 réponse
Reivax962
Messages postés
3672
Date d'inscription
jeudi 16 juin 2005
Statut
Membre
Dernière intervention
11 février 2021
1 011
26 juin 2018 à 10:45
26 juin 2018 à 10:45
Bonjour,
À vue d’œil, je dirais que le mieux est de faire un explode() sur chaque chaîne, de trier / enlever les doublons de tes tableaux résultants (et enlever les mots qui ne t'intéressent pas s'il y en a), puis parcourir les deux tableaux triés en parallèle.
Mais de toutes façons ce sera un traitement avec une complexité non négligeable : en O(n log n) du fait des tris.
Xavier
À vue d’œil, je dirais que le mieux est de faire un explode() sur chaque chaîne, de trier / enlever les doublons de tes tableaux résultants (et enlever les mots qui ne t'intéressent pas s'il y en a), puis parcourir les deux tableaux triés en parallèle.
Mais de toutes façons ce sera un traitement avec une complexité non négligeable : en O(n log n) du fait des tris.
Xavier
26 juin 2018 à 10:47