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

captura do espaço entre "caused" e "by"

Olá,

Pelo que tinha entendido das aulas o regex precisa receber a informação que vai haver um espaço no texto, não daria erro simplemenste digitar

^caused by:.", não é necessário explicitar com \s onde o espaço vai estar?

3 respostas

Fala Gabriel, tudo bem?

Não é necessário explicitar os espaços, visto que o ponto captura qualquer caractere, inclusive, os espaços. Como não tem como prever o que haverá de texto, então não seria possível definir cada espaço que haveria no alvo, então o ponto resolve bem isso. Só que, o que faltou seria o uso do + no final, para que o regex possa encontrar um ou mais caracteres no alvo: ^caused by:.+

Espero ter ajudado, bons estudos

Oi Mateus,

Desculpe, acho que não fui claro no meu questionamento. Minha duvida na verdade é, o correto não seria:

    ***^caused\sby:.***    , não é necessário explicitar com \s onde o espaço vai estar?
solução!

Ah sim, agora compreendi, sim, você pode utilizar o \s, porém, como é uma mensagem do sistema, as chances de houver um espaço diferentes de um espaço normal, são bem poucas, mas caso prefira pode colocar sim, mas também seria interessante colocar o + logo após o \s, para que possa capturar mais de um espaços.

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software