1.7 KiB
1.7 KiB
id, title, challengeType, forumTopicId
id | title | challengeType | forumTopicId |
---|---|---|---|
a6b0bb188d873cb2c8729495 | Convert HTML Entities | 5 | 16007 |
--description--
Convert the characters &
, <
, >
, "
(double quote), and '
(apostrophe), in a string to their corresponding HTML entities.
--hints--
convertHTML("Dolce & Gabbana")
should return "Dolce & Gabbana"
.
assert.match(convertHTML('Dolce & Gabbana'), /Dolce & Gabbana/);
convertHTML("Hamburgers < Pizza < Tacos")
should return "Hamburgers < Pizza < Tacos"
.
assert.match(
convertHTML('Hamburgers < Pizza < Tacos'),
/Hamburgers < Pizza < Tacos/
);
convertHTML("Sixty > twelve")
should return "Sixty > twelve"
.
assert.match(convertHTML('Sixty > twelve'), /Sixty > twelve/);
convertHTML('Stuff in "quotation marks"')
should return "Stuff in "quotation marks""
.
assert.match(
convertHTML('Stuff in "quotation marks"'),
/Stuff in "quotation marks"/
);
convertHTML("Schindler's List")
should return "Schindler's List"
.
assert.match(convertHTML("Schindler's List"), /Schindler's List/);
convertHTML("<>")
should return "<>"
.
assert.match(convertHTML('<>'), /<>/);
convertHTML("abc")
should return "abc"
.
assert.strictEqual(convertHTML('abc'), 'abc');
--seed--
--seed-contents--
function convertHTML(str) {
return str;
}
convertHTML("Dolce & Gabbana");
--solutions--
var MAP = { '&': '&',
'<': '<',
'>': '>',
'"': '"',
"'": '''};
function convertHTML(str) {
return str.replace(/[&<>"']/g, function(c) {
return MAP[c];
});
}