freeCodeCamp/curriculum/challenges/portuguese/02-javascript-algorithms-an.../regular-expressions/specify-only-the-lower-numb...

2.0 KiB

id title challengeType forumTopicId dashedName
587d7db9367417b2b2512ba6 Especificar apenas o mínimo de capturas 1 301366 specify-only-the-lower-number-of-matches

--description--

Você pode especificar um número mínimo e um máximo de capturas com chaves. Haverá vezes que você precisará especificar um mínimo mas não um máximo.

Para fazer isso, apenas escreva o número seguido de uma vírgula dentro das chaves.

Por exemplo, para capturar pelo menos 3 vezes a letra a na string hah você pode escrever a regex /ha{3,}h/.

let A4 = "haaaah";
let A2 = "haah";
let A100 = "h" + "a".repeat(100) + "h";
let multipleA = /ha{3,}h/;
multipleA.test(A4);
multipleA.test(A2);
multipleA.test(A100);

As três chamadas a test acima retornam, na ordem, os valores: true, false e true.

--instructions--

Modifique a regex haRegex para que capture quatro ou mais zs na string Hazzah.

--hints--

A regex deve usar chaves.

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

A regex não deve encontrar a string Hazzah

haRegex.lastIndex = 0;
assert(!haRegex.test('Hazzah'));

A regex não deve encontrar a string Hazzzah

haRegex.lastIndex = 0;
assert(!haRegex.test('Hazzzah'));

A regex deve encontrar a string Hazzzzah

assert('Hazzzzah'.match(haRegex)[0].length === 8);

A regex deve encontrar a string Hazzzzzah

assert('Hazzzzzah'.match(haRegex)[0].length === 9);

A regex deve encontrar a string Hazzzzzzah

assert('Hazzzzzzah'.match(haRegex)[0].length === 10);

A regex deve capturar 30 zs, se presentes, na string Hazzah.

assert('Hazzzzzzzzzzzzzzzzzzzzzzzzzzzzzzah'.match(haRegex)[0].length === 34);

--seed--

--seed-contents--

let haStr = "Hazzzzah";
let haRegex = /change/; // Change this line
let result = haRegex.test(haStr);

--solutions--

let haStr = "Hazzzzah";
let haRegex = /Haz{4,}ah/; // Change this line
let result = haRegex.test(haStr);