Java String substring() : variantes et fonctionnement de la méthode

La méthode substring en Java est utilisée pour extraire une sous-chaîne d’un string complet. Pour ce faire, il existe deux variantes : soit vous divisez le string à partir d’un index défini jusqu’à la fin, soit vous définissez à l’avance le début et la fin de la sous-chaîne.

Qu’est-ce que la méthode substring en Java et comment l’utiliser ?

En langage Java, plusieurs caractères, chiffres ou caractères spéciaux peuvent être combinés pour former un String Java. Si vous souhaitez extraire certaines parties de ce string complet, vous avez plusieurs possibilités. Si la méthode Java String.split() permet de diviser la chaîne entière en ses différentes parties et d’obtenir, par exemple, un aperçu plus clair, la méthode Java String substring() va encore un peu plus loin et ne restitue que la partie de la chaîne définie par un index de début ou, alternativement, par un index de début et d’un index de fin. Découvrons ensemble cette méthode et ses variantes.

Hébergement Web
Hébergement Web flexible, performant et sûr
  • Certificat SSL et protection DDoS
  • Sauvegarde et restauration des données
  • Assistance 24/7 et conseiller personnel

Substring avec beginIndex

Comme déjà évoqué dans notre introduction, il existe deux variantes de la méthode Java String substring(). Elles se distinguent l’une de l’autre en quelques points. La première variante définit simplement un point de départ à partir duquel la sous-chaîne (substring) doit être formée. Celui-ci sépare le string en ce point jusqu’au dernier caractère du string. Sa syntaxe suit ce schéma :

String substring(int beginIndex)
java

Ce faisant, vous déterminez d’abord le string à partir duquel une sous-chaîne doit être extraite. Ensuite, vous définissez à l’aide d’un integer à quel endroit commence cette sous-chaîne. La sortie correspondante est générée par la commande Java System.out.println. La méthode travaille de manière inclusive, de sorte que le caractère qui se trouve à la place de l’index est également séparé. Si la valeur beginIndex est inférieure à 0 ou supérieure à la longueur effective de la chaîne, un message d’erreur s’affichera.

Pour illustrer le fonctionnement de la méthode Str.substring() en langage Java, nous avons choisi un exemple simple pour lequel nous créons un string, puis nous en extrayons une sous-chaîne à un point donné.

public class Main {
	public static void main(String args[]) {
	String Str = new String("Ceci est un exemple. Une deuxième phrase suit.");
	System.out.print("Ceci est la nouvelle sous-chaîne : ");
	System.out.println(Str.substring(23));
	}
}
java

En exécutant le code, vous obtenez l’indication suivante :

Ceci est la nouvelle sous-chaîne ; une deuxième phrase suit.
java

Cette méthode fonctionne tout aussi bien lorsque le string est composé de chiffres :

public class Main {
	public static void main(String args[]) {
	String Str = new String("192.448.782.1142");
	System.out.print("Les quatre derniers chiffres sont : ");
	System.out.println(Str.substring(12));
	}
}
java

La sortie est la suivante :

Les quatre derniers chiffres sont : 1142
java

Substring avec beginIndex et endIndex

La deuxième variante de la méthode Java Substring vous permet de concevoir la sous-chaîne de manière encore plus précise. Dans ce cas, vous définissez non seulement le point à partir duquel la sous-chaîne doit être extraite, mais vous déterminez aussi un point final. La syntaxe correspondante est la suivante :

String substring(int beginIndex, int endIndex)
java

Dans cette méthode, le beginIndex est inclusif et le endIndex est exclusif. Cette variante s’illustre également par un exemple simple :

public class Main {
	public static void main(String args[]) {
	String Str = new String("Ceci est un exemple. Une deuxième phrase suit.");
	System.out.print("Ceci est la nouvelle sous-chaîne : ");
	System.out.println(Str.substring(9, 21));
	}
}
java

La sortie suivante est générée :

Ceci est la nouvelle sous-chaîne : un exemple
java

Par ailleurs, il est aussi tout à fait possible de former une sous-chaîne à l’intérieur d’un mot. Pour cela, nous l’extrayons, par exemple, de cette liste de courses fictive :

public class Main {
	public static void main(String args[]) {
	String Str = new String("œufs, lait, haricots, lard et farine");
	System.out.print("Ceci est la nouvelle sous-chaîne : ");
	System.out.println(Str.substring(16, 21));
	}
}
java

L’indication obtenue prend alors la forme suivante :

Ceci est la nouvelle sous-chaîne : ricot
java

Pour finir, découvrez à l’aide d’un autre exemple un cas d’application possible de la méthode Java Substring en pratique. Imaginons que vous ayez reçu les coordonnées d’un client dans un certain format. Si vous souhaitez isoler uniquement la partie qui vous intéresse, la méthode suivante est tout indiquée. Pour ce faire, nous avons créé le code suivant :

public class Main {
	public static void main(String args[]) {
	String Str = new String("247: Rouault, Lucas|rouaultl@exemples.com|Nantes|12.04.1972");
	System.out.print("Ceci est l’adresse email du client : ");
	System.out.println(Str.substring(20, 41));
	}
}
java

La sortie générée est :

Ceci est l’adresse email du client : rouaultl@exemples.com
java
Cet article vous a-t-il été utile ?
Page top