* feat(tools): add seed/solution restore script * chore(curriculum): remove empty sections' markers * chore(curriculum): add seed + solution to Chinese * chore: remove old formatter * fix: update getChallenges parse translated challenges separately, without reference to the source * chore(curriculum): add dashedName to English * chore(curriculum): add dashedName to Chinese * refactor: remove unused challenge property 'name' * fix: relax dashedName requirement * fix: stray tag Remove stray `pre` tag from challenge file. Signed-off-by: nhcarrigan <nhcarrigan@gmail.com> Co-authored-by: nhcarrigan <nhcarrigan@gmail.com>
2.2 KiB
id, title, challengeType, forumTopicId, dashedName
id | title | challengeType | forumTopicId | dashedName |
---|---|---|---|---|
5c3dda8b4d8df89bea71600f | Check For Mixed Grouping of Characters | 1 | 301339 | check-for-mixed-grouping-of-characters |
--description--
Sometimes we want to check for groups of characters using a Regular Expression and to achieve that we use parentheses ()
.
If you want to find either Penguin
or Pumpkin
in a string, you can use the following Regular Expression: /P(engu|umpk)in/g
Then check whether the desired string groups are in the test string by using the test()
method.
let testStr = "Pumpkin";
let testRegex = /P(engu|umpk)in/;
testRegex.test(testStr);
// Returns true
--instructions--
Fix the regex so that it checks for the names of Franklin Roosevelt
or Eleanor Roosevelt
in a case sensitive manner and it should make concessions for middle names.
Then fix the code so that the regex that you have created is checked against myString
and either true
or false
is returned depending on whether the regex matches.
--hints--
Your regex myRegex
should return true
for the string Franklin D. Roosevelt
myRegex.lastIndex = 0;
assert(myRegex.test('Franklin D. Roosevelt'));
Your regex myRegex
should return true
for the string Eleanor Roosevelt
myRegex.lastIndex = 0;
assert(myRegex.test('Eleanor Roosevelt'));
Your regex myRegex
should return false
for the string Franklin Rosevelt
myRegex.lastIndex = 0;
assert(!myRegex.test('Franklin Rosevelt'));
Your regex myRegex
should return false
for the string Frank Roosevelt
myRegex.lastIndex = 0;
assert(!myRegex.test('Frank Roosevelt'));
You should use .test()
to test the regex.
assert(code.match(/myRegex.test\(\s*myString\s*\)/));
Your result should return true
.
assert(result === true);
--seed--
--seed-contents--
let myString = "Eleanor Roosevelt";
let myRegex = /False/; // Change this line
let result = false; // Change this line
// After passing the challenge experiment with myString and see how the grouping works
--solutions--
let myString = "Eleanor Roosevelt";
let myRegex = /(Franklin|Eleanor).*Roosevelt/;
let result = myRegex.test(myString);