Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

[Projeto] VerificandoSeUmaStringContemUmaSubstring

package br.com.nadson.desafiosc4.principal;

import java.util.Scanner;
import java.util.regex.Matcher;
import java.util.regex.Pattern;

public class VerificandoSeUmaStringContemUmaSubstring {
    public static void main(String[] args) {
        try (Scanner entrada = new Scanner(System.in)) {

            System.out.println("Digite uma frase:");
            String frase = entrada.nextLine().trim();

            System.out.println("Digite uma palavra:");
            String palavra = entrada.nextLine().trim();

            String regex = "(?i)\\b" + Pattern.quote(palavra) + "\\b";
            Pattern pattern = Pattern.compile(regex);
            Matcher matcher = pattern.matcher(frase);

            if (matcher.find()) {
                System.out.println("A frase contém a palavra exata: " + palavra);
            } else {
                System.out.println("A frase NÃO contém a palavra exata.");
            }
        }
    }
}
2 respostas
solução!

Olá, Nadson! Como vai?

Parabéns pela resolução da atividade!

Observei que você explorou o uso da classe Pattern para criar a expressão regular, utilizou muito bem o Matcher para verificar a ocorrência da palavra e ainda compreendeu a importância do uso de Pattern.quote para evitar problemas com caracteres especiais.

Uma dica interessante para o futuro é permitir que o programa identifique múltiplas ocorrências da palavra na frase, mostrando quantas vezes ela aparece. Assim:

int contador = 0;
while (matcher.find()) {
    contador++;
}

if (contador > 0) {
    System.out.println("A frase contém a palavra '" + palavra + "' " + contador + " vez(es).");
} else {
    System.out.println("A frase NÃO contém a palavra exata.");
}

Isso faz com que o programa seja mais completo, fornecendo não apenas a confirmação, mas também a quantidade de vezes que a palavra aparece.

Fico à disposição! E se precisar, conte sempre com o apoio do fórum.

Abraço e bons estudos!

AluraConte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!

obrigado pela dica vou me atentar a isso das proximas vezes