المبرمج العربي نشر 21 ديسمبر 2015 أرسل تقرير مشاركة نشر 21 ديسمبر 2015 في اللغات الأخرى يمكنني استخدام //g في التعابير النمطية للمطابقة بشكل شامل، في حين أنه في روبي هذا السطر:"hello hello".match /(hello)/لن يلتقط سوى hello الأول، فكيف أستطيع التقاط جميع كلمات hello الموجودة في سلسلة نصية معينة؟ اقتباس رابط هذا التعليق شارك على الشبكات الإجتماعية More sharing options...
0 هشام رزق الله نشر 21 ديسمبر 2015 أرسل تقرير مشاركة نشر 21 ديسمبر 2015 من أسهل الطرق في لغة روبي لحل هذه المشكلة هي استخدام تابع scan، فهذا التابع سيعطيك مصفوفة تحتوي على جميع المتطابقات أو في حالة ما مررته إلى كتلة معينة (block) فإنه سيمرر كل مطابق إلى تلك الكتلة لتنفيذ الأوامر التي تريدها.في المثال الأول سيرجع روبي مصفوفة بالمطابقات أما في المثال الثاني فسيطبع كل عنصر على حدة:"hello1 hello2".scan(/(hello\d+)/) # => [["hello1"], ["hello2"]] "hello1 hello2".scan(/(hello\d+)/).each do|m| puts m end اقتباس رابط هذا التعليق شارك على الشبكات الإجتماعية More sharing options...
السؤال
المبرمج العربي
في اللغات الأخرى يمكنني استخدام //g في التعابير النمطية للمطابقة بشكل شامل، في حين أنه في روبي هذا السطر:
لن يلتقط سوى hello الأول، فكيف أستطيع التقاط جميع كلمات hello الموجودة في سلسلة نصية معينة؟
رابط هذا التعليق
شارك على الشبكات الإجتماعية
1 جواب على هذا السؤال
Recommended Posts
انضم إلى النقاش
يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.