Na resposta do exercício consta
\d{2}\.\d{3}\.\d{3}\/\d{4}\-\d{2}
Porém fiz da seguinte forma e funcionou.
\d{2}\.\d{3}\.\d{3}/\d{4}-\d{2}
Coloquei "/\" ao invés de "\/\". Há algum problema?
Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!
Na resposta do exercício consta
\d{2}\.\d{3}\.\d{3}\/\d{4}\-\d{2}
Porém fiz da seguinte forma e funcionou.
\d{2}\.\d{3}\.\d{3}/\d{4}-\d{2}
Coloquei "/\" ao invés de "\/\". Há algum problema?
Oi Emerson, boa pergunta.
A questao aqui é entender o que é caracter especial e o que não é na regex e na linguagem que voce estiver utilizando. O - só é especial dentro de classes de caracteres (como em [0-9]). No exemplo, ele está fora, então seria seguro não escapa-lo com a \. Mas mal não faz, só gastou um caracter a mais.
Já a / é um caso interessante. Na regex em si ela não costuma ter significado, por isso voce deixar de escapa-la com \ funcionou no seu caso. Mas em muitas linguagens (como JavaScript) a / é usada como delimitador de regex na linguagem. Por exemplo:
// codigo javascript
var regex = /\d{2}/;
Nesse caso, se colocar uma / no meio da regex vc vai ter problemas. Por isso escapamos com \. Nao tanto pela regex em si, mas pq a linguagem usa esse caracter como delimitador.
Mas no proprio JavaScript, por exemplo, te permite criar uma regex a partir de uma string na classe RegExp. Ai nesse caso nao usamos a linguagem em si com seu delimitador / então é possivel usar / no meio sem problemas.
// codigo javascript
var regex = new RegExp("\d{2}/\d{2}");