Como pegar o valor apartir de uma regex

2 respostas
L

Quero obter uma certa parte de uma string a partir de uma regex , por exemplo:

String x = “Meu email é [email removido]

quero pegar somente o email e salvar em outra variavel

2 Respostas

A
String  regex = "([A-Za-z0-9_])+@([A-Za-z]+\\.)+[A-Za-z]{2,4}",
		entrada = "Meu email é [email removido]";

		Matcher matcher = Pattern.compile(regex).matcher(entrada);
		if (matcher.find()) {
			System.out.println("Email encontrado: " + matcher.group());
		}

Saída:
Email encontrado: [email removido]


Explicando:
([A-Za-z0-9_])+ quer dizer que antes do @ poderá conter tanto letras maiúsculas/minúsculas, números e underline.

([A-Za-z]+\\.)+ quer dizer que após o @ poderá conter letras maiúsculas/minúsculas e deverá terminar em um ponto ( . ), e seguindo esse padrão, poderá ocorrer inúmeras vezes.

[A-Za-z]{2,4} que dizer que no final desse endereço deve conter ao menos 2~4 letras (geralmente um com ou br )

Eu nunca fiz algo do tipo e tudo que eu fiz aqui eu pesquisei antes de responder, não sei se é a forma mais eficaz de se fazer, mas pode ser útil para você :^)

L

nao é a forma eficaz, mas foi a unica que também encontrei pesquisando antes de vir ler sua resposta.

Criado 27 de novembro de 2017
Ultima resposta 28 de nov. de 2017
Respostas 2
Participantes 2