--- id: 587d7db5367417b2b2512b95 title: Match Single Character with Multiple Possibilities challengeType: 1 forumTopicId: 301357 localeTitle: Совместный персонаж с несколькими возможностями --- ## Description
Вы узнали, как сопоставить литералы ( /literal/ ) и подстановочный знак ( /./ ). Это крайности регулярных выражений, где вы найдете точные совпадения, а другие - все. Существуют варианты, которые являются балансом между двумя крайностями. Вы можете искать буквенный шаблон с некоторой гибкостью с character classes . Классы символов позволяют вам определять группу символов, которые вы хотите сопоставить, помещая их в квадратные ( [ и ] ) скобки. Например, вы хотите совместить "bag" , "big" и "bug" но не "bog" . Вы можете создать regex /b[aiu]g/ для этого. [aiu] - это класс символов, который будет соответствовать только символам "a" , "i" или "u" .
пусть bigStr = «большой»;
let bagStr = "bag";
let bugStr = "ошибка";
пусть bogStr = "болото";
пусть bgRegex = / b [aiu] g /;
bigStr.match (bgRegex); // Возвращает ["большой"]
bagStr.match (bgRegex); // Возвращает ["bag"]
bugStr.match (bgRegex); // Возвращает ["bug"]
bogStr.match (bgRegex); // Возвращает значение null
## Instructions
Используйте класс символов с гласными ( a , e , i , o , u ) в вашем регулярном выражении vowelRegex чтобы найти все гласные в строке quoteSample . Заметка
Обязательно сопоставляйте гласные и нижние строчные гласные.
## Tests
```yml tests: - text: You should find all 25 vowels. testString: assert(result.length == 25); - text: Your regex vowelRegex should use a character class. testString: assert(/\[.*\]/.test(vowelRegex.source)); - text: Your regex vowelRegex should use the global flag. testString: assert(vowelRegex.flags.match(/g/).length == 1); - text: Your regex vowelRegex should use the case insensitive flag. testString: assert(vowelRegex.flags.match(/i/).length == 1); - text: Your regex should not match any consonants. testString: assert(!/[b-df-hj-np-tv-z]/gi.test(result.join())); ```
## Challenge Seed
```js let quoteSample = "Beware of bugs in the above code; I have only proved it correct, not tried it."; let vowelRegex = /change/; // Change this line let result = vowelRegex; // Change this line ```
## Solution
```js let quoteSample = "Beware of bugs in the above code; I have only proved it correct, not tried it."; let vowelRegex = /[aeiou]/gi; // Change this line let result = quoteSample.match(vowelRegex); // Change this line ```