Participer au site avec un Tip
Rechercher
 

Améliorations / Corrections

Vous avez des améliorations (ou des corrections) à proposer pour ce document : je vous remerçie par avance de m'en faire part, cela m'aide à améliorer le site.

Emplacement :

Description des améliorations :

Module : java.base - Package : java.lang - Classe : String
Version documentée : Java SE 17

Méthode « String.substring »

Signature

public String substring( int beginIndex,  int endIndex );

Description

Cette méthode permet d'extraire une sous-chaîne de caractères à partir des positions spécifiées. Les caractères extraits verront leurs positions varier de beginIndex à endIndex-1.

il est important de mémoriser que la première position est inclusive alors que la seconde ne l'est pas. La longueur de la sous-chaîne extraite sera donc de endIndex - beginIndex caractères.
"Super Tutoriel Java".substring( 6, 14 )    renvoie la chaîne de 8 caractères "Tutoriel"
les chaînes de caractères Java sont immutables. La chaîne originale ne sera donc pas altérée et une copie de la sous-chaîne à extraire vous sera retournée.
les conventions de codage Java préconisent de recapitaliser les noms de méthodes à chaque nouveau mot et il faut respecter cette règle. Pour autant, en anglais une sous-chaîne se dit « substring » et il ne s'agit que d'un seul et unique mot. Amis francophones, ne mettez pas de majuscule sur le deuxième 's' ! Dans le cas contraire, le compilateur Java ne manquera pas de vous rappeler ce point de syntaxe anglaise.

Paramètres

ParamètreTypeDescription
beginIndex
int
La position (inclusive) du premier caractère à extraire.
endIndex
int
La position (exclusive) du caractère qui suit le dernier caractère à extraire.

Valeur de retour

La valeur de retour est de type String. Elle correspond à la sous-chaîne de caractères contenue entre les positions spécifiées.

Exception

Type de l'exceptionDescription
IndexOutOfBoundsException
Ce type d'exception sera déclenché si l'un des deux paramètres est hors bornes (inférieur à 0 ou supérieur à this.length()).

Exemple de code

 1 
 2 
 3 
 4 
 5 
 6 
 7 
 8 
 9 
 10 
 11 
 12 
 13 
 14 
 15 
 16 
 17 
 18 
 19 
 20 
 21 
 22 
 23 
 24 
 25 
public class Sample {
    
    public static void main( String[] args ) {
        
        // Une chaîne de caractères contenant des positions à extraire.
        String positionString = "Pos[10,20]";
        
        // On recherche les positions des caractères [ , et ]
        int leftBracketPos = positionString.indexOf( "[" );
        int commaPos = positionString.indexOf( "," );
        int rightBracketPos = positionString.indexOf( "]" );
        
        // On procède aux extractions et aux changements de types.
        String abscissaStr = positionString.substring( leftBracketPos + 1, commaPos );
        int abscissa = Integer.parseInt( abscissaStr );
        
        String ordinateStr = positionString.substring( commaPos + 1, rightBracketPos );
        int ordinate = Integer.parseInt( ordinateStr );
        
        // On affiche les résultats calculés.
        System.out.printf( "La position est %d,%d\n", abscissa, ordinate );
        
    }
    
}
Exemple d'utilisation de la méthode String.substring

Et voici les résultats produit par cet exemple de code.

La position est 10,20

Disponible depuis

1.0

Voir aussi

La méthode String.substring( int )