Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Matias Rezende

[Resolvido] Expressão regular

Recommended Posts

Fala galera

 

Hoje é minha vez de pedir ajuda. Estou apanhando para montar uma expressão regular e não estou conseguindo.

 

Regra para o match

  • Deve conter a string EN
  • A string deve estar entre parênteses
  • Na abertura de parênteses, deve haver um !
  • A string pode estar em qualquer ponto dentro dos parênteses
  • Caso exista a string EN fora dos parêntes, não deve casar

 

A string para casar com a RegEx pode ter os seguintes formatos, com as respectivas respostas esperadas:

 

       @Test
public void testRegexToMatchContextToIgnoreFromString() {
	String regex = "\\([^\\(].?[EN+].?\\)";
	assertTrue("!(EN)CLIENTE".matches(regex));
	assertTrue("!(EN,PR)CLIENTE".matches(regex));
	assertTrue("!(PR,EN)CLIENTE".matches(regex));

	assertFalse("!(PR)CLIENTE".matches(regex));
	assertFalse("!(CO,PR)CLIENTE".matches(regex));
}

 

Tentei diversas formas, mas entendo pouco de RegEx, então acabei rodando e não chegando a lugar algum.

 

Alguém pode me ajudar?

 

Obrigado

 

Carlos Eduardo

Compartilhar este post


Link para o post
Compartilhar em outros sites

Show de bola!!! Funcionou perfeitamente.

 

Vou analisar a expressão para entender o que eu tava fazendo de errado e se tiver alguma dúvida eu pergunto novamente.

 

Valeu!!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.