Vérifier si la chaîne contient une sous-chaîne insensible à la casse en Java

Mohammad Irfan 12 octobre 2023
  1. Trouver une sous-chaîne insensible à la casse dans une chaîne en Java
  2. Trouver une sous-chaîne insensible à la casse dans une chaîne à l’aide de StringUtils en Java
  3. Trouver une sous-chaîne insensible à la casse dans une chaîne à l’aide de la méthode contains() en Java
  4. Trouver une sous-chaîne insensible à la casse dans une chaîne à l’aide de la méthode matches() en Java
Vérifier si la chaîne contient une sous-chaîne insensible à la casse en Java

Ce didacticiel explique comment vérifier ou trouver si une chaîne contient une sous-chaîne en Java.

String est une séquence de caractères se référant parfois à un tableau de caractères. En Java, String est une classe qui gère toutes les opérations liées aux chaînes et fournit des méthodes utilitaires sur lesquelles travailler.

Cet article montre comment rechercher une sous-chaîne dans une chaîne.

Une sous-chaîne est une partie d’une chaîne qui est également une chaîne. Il peut avoir un ou plusieurs caractères.

Une chaîne insensible à la casse est une chaîne qui ne se soucie pas de la casse minuscule ou majuscule des lettres. Comprenons avec quelques exemples.

Trouver une sous-chaîne insensible à la casse dans une chaîne en Java

Dans cet exemple, nous avons utilisé la classe Pattern et ses méthodes compile(), matcher() et find() pour vérifier si une chaîne contient ou non une sous-chaîne. Nous avons utilisé CASE_INSENSITIVE, qui renvoie une valeur booléenne, soit true soit false.

Voir l’exemple ci-dessous.

import java.util.regex.Pattern;

public class SimpleTesting {
  public static void main(String[] args) {
    String str = "DelftStack";
    String strToFind = "St";
    System.out.println(str);
    boolean ispresent =
        Pattern.compile(Pattern.quote(strToFind), Pattern.CASE_INSENSITIVE).matcher(str).find();
    if (ispresent)
      System.out.println("String is present");
    else
      System.out.println("String not found");
  }
}

Production :

DelftStack
String is present

Trouver une sous-chaîne insensible à la casse dans une chaîne à l’aide de StringUtils en Java

En travaillant avec la bibliothèque commune Apache, vous pouvez utiliser la classe StringUtils et sa méthode containsIgnoreCase() pour trouver une sous-chaîne. Voir l’exemple ci-dessous.

Vous devez ajouter des fichiers JAR Apache Commons à votre projet pour exécuter ce code.

import org.apache.commons.lang3.StringUtils;

public class SimpleTesting {
  public static void main(String[] args) {
    String str = "DelftStack";
    String strToFind = "St";
    System.out.println(str);
    boolean ispresent = StringUtils.containsIgnoreCase(str, strToFind);
    if (ispresent)
      System.out.println("String is present");
    else
      System.out.println("String not found");
  }
}

Production :

DelftStack
String is present

Trouver une sous-chaîne insensible à la casse dans une chaîne à l’aide de la méthode contains() en Java

Dans cet exemple, nous avons utilisé la méthode contains() de la classe String qui renvoie true si la sous-chaîne est présente. Nous avons utilisé toLowerCase() pour convertir d’abord tous les caractères en minuscules puis passer à la méthode contains().

Voir l’exemple ci-dessous.

public class SimpleTesting {
  public static void main(String[] args) {
    String str = "DelftStack";
    String strToFind = "St";
    System.out.println(str);
    boolean ispresent = str.toLowerCase().contains(strToFind.toLowerCase());
    if (ispresent)
      System.out.println("String is present");
    else
      System.out.println("String not found");
  }
}

Production :

DelftStack
String is present

Trouver une sous-chaîne insensible à la casse dans une chaîne à l’aide de la méthode matches() en Java

Dans cet exemple, nous avons utilisé la méthode matches() de la classe String qui renvoie true si la sous-chaîne est présente. Il prend regex comme argument.

Voir l’exemple ci-dessous.

public class SimpleTesting {
  public static void main(String[] args) {
    String str = "DelftStack";
    String strToFind = "St";
    System.out.println(str);
    boolean ispresent = str.matches("(?i).*" + strToFind + ".*");
    if (ispresent)
      System.out.println("String is present");
    else
      System.out.println("String not found");
  }
}

Production :

DelftStack
String is present

Article connexe - Java String