Files

78 lines
2.7 KiB
Markdown
Raw Permalink Normal View History

---
id: 587d7dba367417b2b2512ba8
title: Перевірка на все або нічого
challengeType: 1
forumTopicId: 301338
dashedName: check-for-all-or-none
---
# --description--
Іноді шаблони, які ви хочете знайте, можуть мати частини, які можуть або існувати або ні. Однак може бути важливо все-таки перевірити їх.
Ви можете вказати можливу наявність елемента за допомогою знаку питання, `?`. Таким чином ви зможете перевірити відсутність або наявність одного з попередніх елементів. Вважайте, що цей символ вказує на те, що попередній елемент необов'язковий.
Наприклад, в американській та британській англійській мові є незначні відмінності правопису, і ви можете скористатися знаком питання, щоб відповідати обом системам орфографії.
```js
let american = "color";
let british = "colour";
let rainbowRegex= /colou?r/;
rainbowRegex.test(american);
rainbowRegex.test(british);
```
У результаті використання обох методів `test` ви отримаєте `true`.
# --instructions--
Змініть регулярний вираз `favRegex` так, аби він відповідав американському (`favorite`) та британському (`favourite`) варіанту написання слова.
# --hints--
Ваш регулярний вираз повинен використовувати необов'язковий символ `?`.
```js
favRegex.lastIndex = 0;
assert(favRegex.source.match(/\?/).length > 0);
```
Ваш регулярний вираз повинен збігатися з рядком `favorite`
```js
favRegex.lastIndex = 0;
assert(favRegex.test('favorite'));
```
Ваш регулярний вираз повинен збігатися з рядком `favourite`
```js
favRegex.lastIndex = 0;
assert(favRegex.test('favourite'));
```
Ваш регулярний вираз не повинен збігатися з рядком `fav`
```js
favRegex.lastIndex = 0;
assert(!favRegex.test('fav'));
```
# --seed--
## --seed-contents--
```js
let favWord = "favorite";
let favRegex = /change/; // Change this line
let result = favRegex.test(favWord);
```
# --solutions--
```js
let favWord = "favorite";
let favRegex = /favou?r/;
let result = favRegex.test(favWord);
```