# Como usar o método Java substring()

O método Java substring é utilizado para extrair uma substring de uma string completa. Existem duas variantes diferentes para isso: ou você divide a string de um índice definido até o final, ou você define o início e o fim da substring com antecedência.

## O que é o método Java `substring()` e como usá-lo?

É possível combinar vários caracteres, dígitos ou caracteres especiais em uma [string em Java](https://www.ionos.com/pt-br/digitalguide/sites-de-internet/desenvolvimento-web/java-strings/). Se você quiser extrair partes específicas dessa string completa, existem várias maneiras de fazer isso. Enquanto o método [Java `String.split()`](https://www.ionos.com/pt-br/digitalguide/sites-de-internet/desenvolvimento-web/java-string-split/) divide a string inteira em partes individuais, proporcionando uma visão mais clara, o método Java `substring()` vai um pouco além e retorna apenas uma parte da string que você define com a ajuda de um **índice inicial** ou alternativamente com um **índice inicial e final**. Apresentamos a você o método e suas variantes.

## Como usar Java `substring()` com `beginIndex`

Como você pôde perceber na nossa introdução, existem duas variantes para o Java `substring()` em Java, que se diferenciam em alguns pontos. A primeira variante **define apenas um ponto de início**, a partir do qual a substring será formada. Esta variante divide a string nesse ponto até o último caractere da string. Sua sintaxe é a seguinte:

```java
String substring(int beginIndex)
```

Primeiro, você deve determinar a string da qual deseja extrair uma substring. Em seguida, você define com um valor inteiro a posição em que essa substring começa. A saída correspondente é obtida com o [comando Java](https://www.ionos.com/digitalguide/websites/web-development/java-commands/ "Comandos Java") `System.out.println`. O método **funciona de forma inclusiva**, ou seja, o caractere na posição do índice também será incluído. Se o valor de `beginIndex` for menor que 0 ou maior que o comprimento real da string, você receberá uma mensagem de erro.

Para ilustrar o funcionamento deste método Java `substring()`, escolhemos um exemplo simples, onde criamos uma string e depois extraímos uma substring dela em um determinado ponto.

```java
public class Main {
	public static void main(String args[]) {
	String Str = new String("Este é um exemplo. Aqui segue uma segunda frase.");
	System.out.print("Esta é a nova substring: ");
	System.out.println(Str.substring(23));
	}
}
```

Se você executar o código, obterá a seguinte saída:

```java
Esta é a nova substring: Aqui segue uma segunda frase.
```

Claro, isso funciona igualmente bem quando a string é composta por números:

```java
public class Main {
	public static void main(String args[]) {
	String Str = new String("192.448.782.1142");
	System.out.print("Os últimos quatro dígitos são: ");
	System.out.println(Str.substring(12));
	}
}
```

Esta é a sua saída:

```java
Os últimos quatro dígitos são: 1142
```

## Como usar Java `substring()` com `beginIndex` e `endIndex`

Com a segunda variante do método Java `substring()`, você pode definir o trecho da string de forma ainda mais precisa. Nesse caso, você não apenas determina o ponto de início a partir do qual a substring deve ser extraído, mas também define **um ponto final**. A sintaxe correspondente é a seguinte:

```java
String substring(int beginIndex, int endIndex)
```

Neste caso, o índice inicial é inclusivo e o índice final é exclusivo. Podemos ilustrar essa variante com um exemplo simples:

```java
public class Main {
	public static void main(String args[]) {
	String Str = new String("Este é um exemplo. Aqui segue uma segunda frase.");
	System.out.print("Esta é a nova substring: ");
	System.out.println(Str.substring(9, 21));
	}
}
```

Isso gerará a seguinte saída:

```java
Esta é a nova substring: um exemplo
```

É possível extrair uma substring dentro de uma palavra sem problemas. Por exemplo, a partir desta lista de compras fictícia:

```java
public class Main {
	public static void main(String args[]) {
	String Str = new String("Ovos, leite, feijão, bacon e farinha");
	System.out.print("Esta é a nova substring: ");
	System.out.println(Str.substring(14, 20));
	}
}
```

A nova saída ficará assim:

```java
A substring é: feijão
```

Finalmente, mostramos a seguir um exemplo prático de uso do método Java `substring()`. Suponha que você tenha recebido os dados de contato de um cliente em um formato específico e precise isolar apenas a parte importante para você. O método `substring` é ideal para essa tarefa. Aqui está um exemplo de código:

```java
public class Main {
	public static void main(String args[]) {
	String Str = new String("247: Rosa, Mario|mariorosa@exemplo.com|Salvador|12.04.1972");
	System.out.print("Este é o endereço de e-mail do cliente: ");
	System.out.println(Str.substring(20, 41));
	}
}
```

A saída ficará assim:

```java
Este é o endereço de e-mail do cliente: mariorosa@exemplo.com
```


This is a markdown version of: [https://www.ionos.com/pt-br/digitalguide/sites-de-internet/desenvolvimento-web/java-substring/](https://www.ionos.com/pt-br/digitalguide/sites-de-internet/desenvolvimento-web/java-substring/) for AI/LLM consumption.