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é­fi­nis­sez à 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 ca­rac­tères, chiffres ou ca­rac­tè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 pos­si­bi­li­tés. Si la méthode Java String.split() permet de diviser la chaîne entière en ses dif­fé­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, al­ter­na­ti­ve­ment, par un index de début et d’un index de fin. Dé­cou­vrons ensemble cette méthode et ses variantes.

Hé­ber­ge­ment Web
Hé­ber­ge­ment Web de pointe au meilleur prix
  • 3x plus rapide, 60 % d'éco­no­mie
  • Haute dis­po­ni­bi­lité >99,99 %
  • Seulement chez IONOS : jusqu'à 500 Go inclus

Substring avec beginIndex

Comme déjà évoqué dans notre in­tro­duc­tion, il existe deux variantes de la méthode Java String substring(). Elles se dis­tin­guent l’une de l’autre en quelques points. La première variante définit sim­ple­ment 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é­ter­mi­nez d’abord le string à partir duquel une sous-chaîne doit être extraite. Ensuite, vous dé­fi­nis­sez à l’aide d’un integer à quel endroit commence cette sous-chaîne. La sortie cor­res­pon­dante 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 in­fé­rieure à 0 ou su­pé­rieure à la longueur effective de la chaîne, un message d’erreur s’affichera.

Pour illustrer le fonc­tion­ne­ment 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’in­di­ca­tion suivante :

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

Cette méthode fonc­tionne 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é­fi­nis­sez non seulement le point à partir duquel la sous-chaîne doit être extraite, mais vous dé­ter­mi­nez aussi un point final. La syntaxe cor­res­pon­dante 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’in­di­ca­tion 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’ap­pli­ca­tion possible de la méthode Java Substring en pratique. Imaginons que vous ayez reçu les coor­don­nées d’un client dans un certain format. Si vous souhaitez isoler uni­que­ment 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
Aller au menu principal