Vérifier si une chaîne en contient une autre
Résolu/Fermé
A voir également:
- Vérifier si une chaîne en contient une autre
- Verifier un lien - Guide
- Ce programme est écrit en python. il construit un mot secret dans une variable mais il ne l'affiche pas. modifiez-le pour qu'il affiche le mot secret. exécutez-le. quel est ce mot secret ? cette épreuve contient un simulateur. ✓ - Forum Python
- Le fichier contient une liste de prénoms. triez ce tableau par ordre alphabétique des prénoms. quel mot est formé par les 6 premières lettres de la colonne code ? - Forum Bureautique
- Google sheet si contient ✓ - Forum Excel
- Excel si cellule contient partie texte ✓ - Forum Excel
6 réponses
Utilisateur anonyme
27 mars 2009 à 13:54
27 mars 2009 à 13:54
Il y a beaucoup plus simple !
substr_count("chaine","chainerecherchee") renvoie le nombre d'occurrence de la chaine recherchée...
substr_count("chaine","chainerecherchee") renvoie le nombre d'occurrence de la chaine recherchée...
Psyk974
Messages postés
551
Date d'inscription
lundi 2 février 2009
Statut
Membre
Dernière intervention
30 mars 2010
51
12 févr. 2009 à 09:38
12 févr. 2009 à 09:38
static boolean contient(String msg, String msg2) { boolean contenu_dans = true; boolean trouve_lettre = false; int j = 0; int dernier_index = -1; for (int i = 0; i < msg2.length() - 1; i++) { j = 0; trouve_lettre = false; for (int j = 0; j < msg.length() - 1; j++) { if (msg2.charAt(i) == msg.charAt(j)) { if (j > dernier_index) { trouve_lettre = true; dernier_index = j; break; } } } if (trouve_lettre == false) { contenu_dans = false; } } return contenu_dans; }
Rajouter un break dans la deuxième boucle et ça marche ! Excuse moi
Désolé, j'ai oublier de spécifier que le code est en Java...
Psyk974
Messages postés
551
Date d'inscription
lundi 2 février 2009
Statut
Membre
Dernière intervention
30 mars 2010
51
12 févr. 2009 à 05:25
12 févr. 2009 à 05:25
Salut,
Bon je m'y connais pas trop en JAVA mais je te donne ça quand même à essayer. S'il y a des erreurs de syntaxe je te laisse le soin de corriger :)
Bon je m'y connais pas trop en JAVA mais je te donne ça quand même à essayer. S'il y a des erreurs de syntaxe je te laisse le soin de corriger :)
static boolean contient(String msg, String msg2) { boolean contenu_dans = true; boolean trouve_lettre = false; int j = 0; for (int i = 0; i < msg2.length() - 1; i++) { j = 0; trouve_lettre = false; for (int j = 0; j < msg.length() - 1; j++) { if (msg2.charAt(i) == msg.charAt(j)) { trouve_lettre = true; } } if (trouve_lettre == false) { contenu_dans = false; } } return contenu_dans; }
Evil Jajuka
>
Psyk974
Messages postés
551
Date d'inscription
lundi 2 février 2009
Statut
Membre
Dernière intervention
30 mars 2010
12 févr. 2009 à 05:42
12 févr. 2009 à 05:42
Merci pour l'aide, mais le code que tu m'a donné retourne true même si les caractères se retrouve dans la chaîne dans un ordre quelconque, mais il faudrait qu'il retourne true seulement si les lettres sont dans le bon ordre.
Exemple :
"Le manteau est en vison" et "maison" retournera true,
"Le manteau est en vison" et "nosiv" retournera false (nosiv = vison à l'envers)
Exemple :
"Le manteau est en vison" et "maison" retournera true,
"Le manteau est en vison" et "nosiv" retournera false (nosiv = vison à l'envers)
Psyk974
Messages postés
551
Date d'inscription
lundi 2 février 2009
Statut
Membre
Dernière intervention
30 mars 2010
51
>
Evil Jajuka
12 févr. 2009 à 06:18
12 févr. 2009 à 06:18
Ahhh ok mais j'avais pas compris qu'il fallait que les lettres soient dans l'ordre.
Je regarde ce que je peux faire et je te tiens au courant
Je regarde ce que je peux faire et je te tiens au courant
Psyk974
Messages postés
551
Date d'inscription
lundi 2 février 2009
Statut
Membre
Dernière intervention
30 mars 2010
51
12 févr. 2009 à 06:28
12 févr. 2009 à 06:28
Essaye ça et oublie toujours pas de corriger mes erreurs éventuelles de syntaxes lol
static boolean contient(String msg, String msg2) { boolean contenu_dans = true; boolean trouve_lettre = false; int j = 0; int dernier_index = -1; for (int i = 0; i < msg2.length() - 1; i++) { j = 0; trouve_lettre = false; for (int j = 0; j < msg.length() - 1; j++) { if (msg2.charAt(i) == msg.charAt(j)) { if (j > dernier_index) { trouve_lettre = true; dernier_index = j; } } } if (trouve_lettre == false) { contenu_dans = false; } } return contenu_dans; }
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Merci Psyk974, ça marche parfaitement :)
Psyk974
Messages postés
551
Date d'inscription
lundi 2 février 2009
Statut
Membre
Dernière intervention
30 mars 2010
51
13 févr. 2009 à 03:58
13 févr. 2009 à 03:58
Ok cool, met un résolu alors :)
9 avril 2009 à 12:12
23 mai 2013 à 11:04