2.3 KiB
id | title | challengeType | forumTopicId | dashedName |
---|---|---|---|---|
587d7db8367417b2b2512ba0 | Capturar tudo exceto letras e números | 1 | 301353 | match-everything-but-letters-and-numbers |
--description--
Você aprendeu que você pode usar um atalho para capturar alfanuméricos [A-Za-z0-9_]
usando \w
. Você pode querer capturar exatamente o oposto disso.
Você pode capturar não-alfanuméricos usando \W
ao invés de \w
. Observe que o atalho usa uma maiúscula. Este atalho é o mesmo que escrever [^A-Za-z0-9_]
.
let shortHand = /\W/;
let numbers = "42%";
let sentence = "Coding!";
numbers.match(shortHand);
sentence.match(shortHand);
A primeira chamada a match
retorna ["%"]
enquanto o segundo retorna ["!"]
.
--instructions--
Use o atalho \W
para contar o número de caracteres não-alfanuméricos em várias strings.
--hints--
Sua regex deve usar a flag global.
assert(nonAlphabetRegex.global);
Sua regex deve encontrar 6 caracteres não-alfanuméricos na string The five boxing wizards jump quickly.
.
assert(
'The five boxing wizards jump quickly.'.match(nonAlphabetRegex).length == 6
);
Sua regex deve usar o atalho que captura os caracteres não-alfanuméricos.
assert(/\\W/.test(nonAlphabetRegex.source));
Sua regex deve encontrar 8 caracteres não-alfanuméricos na string Pack my box with five dozen liquor jugs.
assert(
'Pack my box with five dozen liquor jugs.'.match(nonAlphabetRegex).length == 8
);
Sua regex deve encontrar 6 caracteres não-alfanuméricos na string How vexingly quick daft zebras jump!
assert(
'How vexingly quick daft zebras jump!'.match(nonAlphabetRegex).length == 6
);
Sua regex deve encontrar 12 caracteres não-alfanuméricos na string 123 456 7890 ABC def GHI jkl MNO pqr STU vwx YZ.
assert(
'123 456 7890 ABC def GHI jkl MNO pqr STU vwx YZ.'.match(nonAlphabetRegex)
.length == 12
);
--seed--
--seed-contents--
let quoteSample = "The five boxing wizards jump quickly.";
let nonAlphabetRegex = /change/; // Change this line
let result = quoteSample.match(nonAlphabetRegex).length;
--solutions--
let quoteSample = "The five boxing wizards_jump quickly.";
let nonAlphabetRegex = /\W/g; // Change this line
let result = quoteSample.match(nonAlphabetRegex).length;