freeCodeCamp/curriculum/challenges/espanol/02-javascript-algorithms-an.../regular-expressions/match-single-character-with...

2.6 KiB

id title challengeType forumTopicId dashedName
587d7db5367417b2b2512b95 Haz coincidir un solo carácter con múltiples posibilidades 1 301357 match-single-character-with-multiple-possibilities

--description--

Aprendiste cómo hacer coincidir los patrones literales (/literal/) y el carácter de comodín (/./). Estos son los extremos de las expresiones regulares, donde uno encuentra coincidencias exactas y el otro coincide de todo. Hay opciones que representan un equilibrio entre los dos extremos.

Puedes buscar un patrón literal con cierta flexibilidad utilizando las clases de caracteres. Las clases de caracteres te permiten definir un grupo de caracteres que deseas coincidir colocándolos dentro de corchetes ([ y ]).

Por ejemplo, si quieres hacer coincidir bag, big, y bug pero no bog. Puedes crear la expresión regular /b[aiu]g/ para hacer esto. [aiu] es la clase de caracteres que solo coincidirá con los caracteres a, i, o u.

let bigStr = "big";
let bagStr = "bag";
let bugStr = "bug";
let bogStr = "bog";
let bgRegex = /b[aiu]g/;
bigStr.match(bgRegex);
bagStr.match(bgRegex);
bugStr.match(bgRegex);
bogStr.match(bgRegex);

En orden, las cuatro llamadas de match devolverán los valores ["big"], ["bag"], ["bug"], and null.

--instructions--

Usa una clase de caracteres con las vocales (a, e, i, o u) en tu expresión regular vowelRegex para encontrar todas las vocales en la cadena quoteSample.

Nota: Asegúrate de hacer coincidir tanto las vocales mayúsculas como minúsculas.

--hints--

Debes encontrar las 25 vocales.

assert(result.length == 25);

Tu expresión regular vowelRegex debe usar una clase de caracteres.

assert(/\[.*\]/.test(vowelRegex.source));

Tu expresión regular vowelRegex debe utilizar la bandera global.

assert(vowelRegex.flags.match(/g/).length == 1);

Tu expresión regular vowelRegex debe utilizar la bandera que no distingue entre mayúsculas y minúsculas.

assert(vowelRegex.flags.match(/i/).length == 1);

Tu expresión regular no debe coincidir con ninguna consonante.

assert(!/[b-df-hj-np-tv-z]/gi.test(result.join()));

--seed--

--seed-contents--

let quoteSample = "Beware of bugs in the above code; I have only proved it correct, not tried it.";
let vowelRegex = /change/; // Change this line
let result = vowelRegex; // Change this line

--solutions--

let quoteSample = "Beware of bugs in the above code; I have only proved it correct, not tried it.";
let vowelRegex = /[aeiou]/gi; // Change this line
let result = quoteSample.match(vowelRegex); // Change this line