البرمجة

استخراج النصوص بين علامات ${} في JavaScript

في عالم برمجة الويب وتطوير الواجهات، يُعتبر لغة JavaScript من اللغات الرائدة التي تستخدم على نطاق واسع لتحقيق تفاعلية مواقع الويب. عندما يتعلق الأمر بالعمليات النصية واستخراج البيانات من نصوص معينة، تكون تقنيات تحليل السلاسل النصية أمراً حيوياً.

إذا كنت تسعى لاستخراج جميع النصوص الموجودة بين علامات “${” و “}” في سلسلة نصية معينة باستخدام JavaScript، يمكنك استخدام تعبيرات القوالب (Regular Expressions) لتحقيق ذلك بكفاءة.

فلنقم بإنشاء دالة JavaScript تقوم بتحقيق هذه المهمة:

javascript
function extractSubstrings(inputString) { // تعبير القالب للبحث عن النصوص بين "${" و "}" const regex = /\${(.*?)}/g; // مصفوفة لتخزين النصوص المستخرجة const extractedSubstrings = []; // البحث عن جميع التطابقات باستخدام تعبير القالب let match; while ((match = regex.exec(inputString)) !== null) { // إضافة النص المستخرج إلى المصفوفة extractedSubstrings.push(match[1]); } // إرجاع المصفوفة النهائية return extractedSubstrings; } // مثال على استخدام الدالة const inputText = 'this is ${test} string ${like}'; const result = extractSubstrings(inputText); console.log(result); // Output: ["test", "like"]

تحليل الكود أعلاه:

  1. تم استخدام تعبير القالب /\${(.*?)}/g للبحث عن جميع التطابقات بين “${” و “}”.
  2. تم استخدام الدالة exec للبحث المتكرر في السلسلة النصية واستخراج النصوص بين العلامات.
  3. تم تخزين النصوص المستخرجة في مصفوفة ومن ثم إرجاعها كنتيجة.

يمكنك تكامل هذا الكود في تطبيقك أو مشروعك لتحقيق استخراج النصوص بنجاح.

المزيد من المعلومات

بالطبع، دعونا نعزز المعلومات حول استخدام تعبيرات القوالب في JavaScript لاستخراج النصوص بين “${” و “}”.

تعبير القالب /\${(.*?)}/g يتكون من العناصر التالية:

  1. \$: يُستخدم للبحث عن علامة الدولار “$”، ولكن بسبب أنها حرف خاص في تعبيرات القوالب، يجب الهروب منها باستخدام \.

  2. \{: تستخدم للبحث عن علامة الفتح الكسرى “{“.

  3. (.*?): تعبير يستخدم للتطابق مع أي نص بين “${” و “}” بشكل غير جشع (non-greedy)، مما يعني أنه سيحاول الحصول على أقل عدد ممكن من الحروف. والقوسين يعني أن هذا الجزء سيتم استخراجه كتطابق فرعي.

  4. \}: تستخدم للبحث عن علامة الإغلاق الكسرى “}”.

  5. /g: يُستخدم للبحث عن جميع التطابقات في السلسلة النصية، وليس فقط التطابق الأول.

فيما يلي توضيح إضافي حول الخطوات في الكود:

  • استخدام exec: تعتبر هذه الدالة هي الطريقة المفضلة لاستخدام تعبيرات القوالب في جملة while للبحث عن جميع التطابقات في السلسلة النصية.
  • (match = regex.exec(inputString)) !== null: يستخدم للتحقق من وجود مزيد من التطابقات في السلسلة النصية.

هذا النهج يسمح بفحص النص واستخراج النصوص المطلوبة بشكل متكرر حتى يتم الوصول إلى نهاية السلسلة النصية. يمكنك تكامل هذا الكود في تطبيقاتك لتحقيق استخراج النصوص بين “${” و “}” بشكل فعال ومرن.

زر الذهاب إلى الأعلى