1.7 KiB
1.7 KiB
id, title, challengeType, forumTopicId, dashedName
| id | title | challengeType | forumTopicId | dashedName |
|---|---|---|---|---|
| a6b0bb188d873cb2c8729495 | Convert HTML Entities | 5 | 16007 | convert-html-entities |
--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];
});
}