Comment puis-je savoir si la sous-chaîne "template" (par exemple) existe dans un objet String?Comment voir si une sous-chaîne existe dans une autre chaîne dans Java 1.4?
Ce serait bien si ce n'était pas une vérification sensible à la casse.
Comment puis-je savoir si la sous-chaîne "template" (par exemple) existe dans un objet String?Comment voir si une sous-chaîne existe dans une autre chaîne dans Java 1.4?
Ce serait bien si ce n'était pas une vérification sensible à la casse.
utiliser une expression régulière et la marquer comme insensible à la casse:
if (myStr.matches("(?i).*template.*")) {
// whatever
}
Le tourne sur la casse et le * à chaque fin du match terme de recherche (i?). tous les caractères environnants (puisque String.matches fonctionne sur toute la chaîne).
Pour une affaire recherche insensible, à toUpperCase ou toLowerCase à la fois la chaîne d'origine et la sous-chaîne avant la indexOf
String full = "my template string";
String sub = "Template";
boolean fullContainsSub = full.toUpperCase().indexOf(sub.toUpperCase()) != -1;
+1 et je supprime ma réponse. Le vôtre est meilleur pour les deux parties de la question. –
Bien sûr, si vous prévoyez de faire beaucoup de comparaisons n'oubliez pas de stocker une version supérieure de la chaîne la plus utilisée – siukurnin
Vous pouvez utiliser indexOf() et toLowerCase() pour le cas tests insensibles aux sous-chaînes.
String string = "testword";
boolean containsTemplate = (string.toLowerCase().indexOf("template") >= 0);
String word = "cat";
String text = "The cat is on the table";
Boolean found;
found = text.contains(word);
J'adore les regexes mais c'est un peu exagéré dans ce cas – siukurnin
@CoverosGene quand j'ai ajouté ce code pour rechercher un colonne dans mon jtable alors ce code fonctionne parfaitement, mais a un problème qui au lieu de rechercher les éléments les plus haut de la chaîne bits recherche d'abord les éléments les plus bas? Pouvez-vous me dire ce que je fais de mal ??? –