Avatar ·

كيفية استخدام متغير في التعبير النمطي في JavaScript؟

مرحباً بالجميع! أنا مبتدئ في JavaScript وأحاول كتابة دالة بحث بسيطة. لدي مصفوفة من السلاسل النصية، وأريد إيجاد جميع العناصر التي تحتوي على كلمة معينة. يتم تمرير الكلمة المراد البحث عنها كوسيط للدالة. المشكلة هي أنني لا أستطيع فهم كيفية إدراج متغير داخل التعبير المنتظم. عندما أكتب بهذا الشكل: ```javascript function searchItems(array, searchTerm) { const regex = /searchTerm/gi; return array.filter(item => regex.test(item)); } ``` ...فإنه يبحث حرفياً عن السلسلة "searchTerm"، وليس عن قيمة المتغير. لقد جربت استخدام `new RegExp()`، لكنني ما زلت أواجه مشكلة. إليك الكود الحالي الخاص بي: ```javascript function searchItems(array, searchTerm) { const regex = new RegExp(searchTerm, 'gi'); return array.filter(item => regex.test(item)); } const fruits = ['Apple', 'Banana', 'Avocado', 'Grape']; console.log(searchItems(fruits, 'ap')); // أتوقع: ['Apple', 'Avocado'] ``` يبدو أنه يعمل، لكنني لاحظت شيئاً غريباً