--- id: 587d7db5367417b2b2512b95 title: Match Single Character with Multiple Possibilities challengeType: 1 videoUrl: '' localeTitle: تطابق شخصية واحدة مع إمكانيات متعددة --- ## Description
تعلمت كيف تتطابق مع الأنماط الحرفية ( /literal/ ) وحرف البدل ( /./ ). هذه هي الحدود القصوى للتعبيرات العادية ، حيث يجد المرء مباريات متطابقة ويطابق الآخر كل شيء. هناك خيارات توازن بين النقيضين. يمكنك البحث عن نمط حرفية مع بعض المرونة مع character classes . تتيح لك فئات الأحرف تعريف مجموعة من الأحرف التي ترغب في مطابقتها بوضعها داخل أقواس مربعة ( [ و ] ). على سبيل المثال ، تريد مطابقة "bag" و "big" و "bug" وليس "bog" . يمكنك إنشاء regex /b[aiu]g/ للقيام بذلك. إن [aiu] هو فئة الشخصية التي تتطابق فقط مع الأحرف "a" أو "i" أو "u" .
let bigStr = "big"؛
اسمحوا bagStr = "حقيبة" ؛
let bugStr = "bug"؛
let bogStr = "bog"؛
let bgRegex = / b [aiu] g /؛
bigStr.match (bgRegex)؛ // Returns ["big"]
bagStr.match (bgRegex)؛ // Returns ["bag"]
bugStr.match (bgRegex)؛ // Returns ["bug"]
bogStr.match (bgRegex)؛ // يعود لاغيا
## Instructions
استخدم فئة أحرف مع أحرف العلة ( a ، e ، i ، o ، u ) في your regex vowelRegex للعثور على جميع حروف العلة في سلسلة quoteSample . ملحوظة
تأكد من مطابقة حروف العلة العلوية والصغيرة.
## Tests
```yml tests: - text: يجب أن تجد كل الحروف المتحركة 25. testString: 'assert(result.length == 25, "You should find all 25 vowels.");' - text: يجب أن يستخدم regex vowelRegex فئة شخصية. testString: 'assert(/\[.*\]/.test(vowelRegex.source), "Your regex vowelRegex should use a character class.");' - text: يجب أن يستخدم regex vowelRegex العلم العام. testString: 'assert(vowelRegex.flags.match(/g/).length == 1, "Your regex vowelRegex should use the global flag.");' - text: يجب أن يستخدم vowelRegex regex vowelRegex علم حالة الأحرف. testString: 'assert(vowelRegex.flags.match(/i/).length == 1, "Your regex vowelRegex should use the case insensitive flag.");' - text: يجب ألا يطابق تعبيرك المعتاد أي أحرف ساكنة. testString: 'assert(!/[b-df-hj-np-tv-z]/gi.test(result.join()), "Your regex should not match any consonants.");' ```
## 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 // solution required ```