Salut tout le monde
Est ce qu’il y’a une méthode prédifinie qui permet de retourner le nombre d’occurrences d’une sous chaine dans une chaine de caractére ?
La même question pour une liste(util.List) des des objets.
Merci d’avance
Salut tout le monde
Est ce qu’il y’a une méthode prédifinie qui permet de retourner le nombre d’occurrences d’une sous chaine dans une chaine de caractére ?
La même question pour une liste(util.List) des des objets.
Merci d’avance
Salut,
Non je ne pense pas que cela existe en standard, mais cela ne doit pas être trop dur à implémenter avec une boucle sur indexOf()...Envoyé par adilo
Il y a bien la méthode frequency() disponible depuis Java 5.0...Envoyé par adilo
Sinon il y a de fortes chances que tu trouves ton bonheur dans les Jakarta Commons Lang ou Collections...
a++
Pout les chaines tu peus utiliser les classes Pattern et Matcher.
Tu as des explications utiles à lire dans les cours et tutoriels pour apprendre Java : http://java.developpez.com/cours/
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 public int getSousChaineCount(String chaine, String sousChaine) { return Pattern.compile(Pattern.quote(sousChaine)).matcher(chaine).groupCount(); }
Je ne répondrai à aucune question technique par MP.
Pensez aux Tutoriels et aux FAQs avant de poster (pour le java il y a aussi JavaSearch), n'oubliez pas non plus la fonction Rechercher.
Enfin, quand une solution a été trouvée à votre problème pensez au tag
Cours Dvp : http://ydisanto.developpez.com
Blog : http://yann-disanto.blogspot.com/
Page perso : http://yann-disanto.fr
Attention la méthode groupCount() renvoit le nombre de groupe de l'expression régulière (les éléments entres parenthèses) et non pas le nombre d'élément trouvé...Envoyé par le y@m's
Si tu veux utiliser les regexp pour cela il faut utiliser une boucle avec la méthode find() :
a++
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 public static int getSousChaineCount(String chaine, String sousChaine) { Matcher matcher = Pattern.compile(Pattern.quote(sousChaine)).matcher(chaine); int count = 0; while (matcher.find()) { count ++; } return count; }
je croyais que cela renvoyait le nombre d'élément trouvéEnvoyé par adiGuba
(le nom de la méthode m'a induit en erreur par rapport aux méthodes group())
mea culpa
ça m'apprendra à pas lire la javadoc
Je ne répondrai à aucune question technique par MP.
Pensez aux Tutoriels et aux FAQs avant de poster (pour le java il y a aussi JavaSearch), n'oubliez pas non plus la fonction Rechercher.
Enfin, quand une solution a été trouvée à votre problème pensez au tag
Cours Dvp : http://ydisanto.developpez.com
Blog : http://yann-disanto.blogspot.com/
Page perso : http://yann-disanto.fr
Merci bcp
Mais Collections.frequency() ne marche pas chez moi pouiquoi?
mon jdk est 1.4
parce que tu es en 1.4 justement. Il te faut 1.5 pour ça ....
"If email had been around before the telephone was invented, people would have said, 'Hey, forget email! With this new telephone invention I can actually talk to people!"
Besoin d'une nouvelle méthode pour développer ? -> http://www.la-rache.com/
Il est aussi possible de faire un split, et de calculer le nombre d'éléments obtenus dans le tableau - 1
C'est barbare, je sais
K
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager