freeCodeCamp/curriculum/challenges/portuguese/02-javascript-algorithms-an.../regular-expressions/specify-upper-and-lower-num...

2.2 KiB

id title challengeType forumTopicId dashedName
587d7db9367417b2b2512ba5 Especificar o número de capturas 1 301367 specify-upper-and-lower-number-of-matches

--description--

Lembre-se de que você pode usar o sinal de + para procurar por uma ou mais ocorrências e o asterisco * para procurar por zero ou mais ocorrências. Eles são convenientes, mas às vezes você precisa capturar um número exato de caracteres.

Você pode especificar um número mínimo e um máximo de capturas com especificadores de quantidade. Para usar especificadores de quantidade, usa-se chaves: { e }. Você pode especificar os dois números dentro delas para restringir as capturas.

Por exemplo, se você quiser encontrar a letra a de 3 a 5 vezes na string ah, você pode escrever a regex /a{3,5}h/.

let A4 = "aaaah";
let A2 = "aah";
let multipleA = /a{3,5}h/;
multipleA.test(A4);
multipleA.test(A2);

A primeira chamada a test retorna true enquanto a segunda retorna false.

--instructions--

Altere a regex ohRegex para que capture a frase Oh no, mas apenas quando nela houver de 3 a 6 letras h's.

--hints--

A regex deve usar chaves.

assert(ohRegex.source.match(/{.*?}/).length > 0);

A regex não deve encontrar a string Ohh no

ohRegex.lastIndex = 0;
assert(!ohRegex.test('Ohh no'));

A regex deve encontrar a string Ohhh no

assert('Ohhh no'.match(ohRegex)[0].length === 7);

A regex deve encontrar a string Ohhhh no

assert('Ohhhh no'.match(ohRegex)[0].length === 8);

A regex deve encontrar a string Ohhhhh no

assert('Ohhhhh no'.match(ohRegex)[0].length === 9);

A regex deve encontrar a string Ohhhhhh no

assert('Ohhhhhh no'.match(ohRegex)[0].length === 10);

A regex não deve encontrar a string Ohhhhhhh no

ohRegex.lastIndex = 0;
assert(!ohRegex.test('Ohhhhhhh no'));

--seed--

--seed-contents--

let ohStr = "Ohhh no";
let ohRegex = /change/; // Change this line
let result = ohRegex.test(ohStr);

--solutions--

let ohStr = "Ohhh no";
let ohRegex = /Oh{3,6} no/; // Change this line
let result = ohRegex.test(ohStr);