90 lines
2.0 KiB
Markdown
90 lines
2.0 KiB
Markdown
![]() |
---
|
||
|
id: a6b0bb188d873cb2c8729495
|
||
|
title: HTML エンティティに変換する
|
||
|
challengeType: 5
|
||
|
forumTopicId: 16007
|
||
|
dashedName: convert-html-entities
|
||
|
---
|
||
|
|
||
|
# --description--
|
||
|
|
||
|
文字列中の文字 `&`、`<`、`>`、`"` (二重引用符)、`'` (アポストロフィー) を、それぞれ対応する HTML エンティティに変換してください。
|
||
|
|
||
|
# --hints--
|
||
|
|
||
|
`convertHTML("Dolce & Gabbana")` は、文字列 `Dolce & Gabbana` を返す必要があります。
|
||
|
|
||
|
```js
|
||
|
assert.match(convertHTML('Dolce & Gabbana'), /Dolce & Gabbana/);
|
||
|
```
|
||
|
|
||
|
`convertHTML("Hamburgers < Pizza < Tacos")` は、文字列 `Hamburgers < Pizza < Tacos` を返す必要があります。
|
||
|
|
||
|
```js
|
||
|
assert.match(
|
||
|
convertHTML('Hamburgers < Pizza < Tacos'),
|
||
|
/Hamburgers < Pizza < Tacos/
|
||
|
);
|
||
|
```
|
||
|
|
||
|
`convertHTML("Sixty > twelve")` は、文字列 `Sixty > twelve` を返す必要があります。
|
||
|
|
||
|
```js
|
||
|
assert.match(convertHTML('Sixty > twelve'), /Sixty > twelve/);
|
||
|
```
|
||
|
|
||
|
`convertHTML('Stuff in "quotation marks"')` は、文字列 `Stuff in "quotation marks"` を返す必要があります。
|
||
|
|
||
|
```js
|
||
|
assert.match(
|
||
|
convertHTML('Stuff in "quotation marks"'),
|
||
|
/Stuff in "quotation marks"/
|
||
|
);
|
||
|
```
|
||
|
|
||
|
`convertHTML("Schindler's List")` は、文字列 `Schindler's List` を返す必要があります。
|
||
|
|
||
|
```js
|
||
|
assert.match(convertHTML("Schindler's List"), /Schindler's List/);
|
||
|
```
|
||
|
|
||
|
`convertHTML("<>")` は、文字列 `<>` を返す必要があります。
|
||
|
|
||
|
```js
|
||
|
assert.match(convertHTML('<>'), /<>/);
|
||
|
```
|
||
|
|
||
|
`convertHTML("abc")` は、文字列 `abc` を返す必要があります。
|
||
|
|
||
|
```js
|
||
|
assert.strictEqual(convertHTML('abc'), 'abc');
|
||
|
```
|
||
|
|
||
|
# --seed--
|
||
|
|
||
|
## --seed-contents--
|
||
|
|
||
|
```js
|
||
|
function convertHTML(str) {
|
||
|
return str;
|
||
|
}
|
||
|
|
||
|
convertHTML("Dolce & Gabbana");
|
||
|
```
|
||
|
|
||
|
# --solutions--
|
||
|
|
||
|
```js
|
||
|
var MAP = { '&': '&',
|
||
|
'<': '<',
|
||
|
'>': '>',
|
||
|
'"': '"',
|
||
|
"'": '''};
|
||
|
|
||
|
function convertHTML(str) {
|
||
|
return str.replace(/[&<>"']/g, function(c) {
|
||
|
return MAP[c];
|
||
|
});
|
||
|
}
|
||
|
```
|