- 0
سجل دخول لمتابعه هذا
متابعين
0

سؤال في Regular Expressions
بواسطة
COMFORT,
-
يستعرض القسم حالياً 0 members
لا يوجد أعضاء مسجلين يشاهدون هذه الصفحة .
بواسطة
COMFORT,
لا يوجد أعضاء مسجلين يشاهدون هذه الصفحة .
تم النشر منذ
السلام عليكم و رحمة الله و بركاته
كل عام و أنت بخير إخواني الكرام
لدي سؤال في الـ Regular Expressions
أنا لم أستعملها كثيراً لذلك ليست لدي الكثير من الخبرة في التعامل معها
أنا أقوم بتصميم برنامج يحلل بعص التعليمات و هذه التعليمات خاصة ببرمجة الماكينات الـ CNC
المهم أن كل تعليمة لها شكل معين و أنا أود أن أتحقق من هذه الشكل أو التنسيق
على سبيل المثال هذا كود للتوضيح فقط
سيجعل الحد القاطع للماكينة يتحرك إلى الإحداثيات (6,5) أي س = 5 و ص = 6
هذا المثال يتكون من سطر واحد و السطر الواحد في هذه البرمجة يسمى Block
يتم تنفيذ البرنامج الكامل سطراً تلو الآخر.
قمت بتصميم برنامج و استطعت قرأة السطور و التحقق من الأوامر و البرنامج يعمل
وفق خطة معينة ليست هناك مشاكل .. المشكلة التي تواجهني هي كالآتي:
بعد أن أتعرف على الآمر .. أود أن أتحقق من كونه مكتوب بشكل صحيح و أردت أن أستخدم
الـ Regular Expressions و هنا واجهتني المشكلة
حيث أن الأمر السابق لا يشترط فيه الترتيب يعني أنه يمكن كتابته
أيضاً يمكن كتابة أحد المحاور دون ذكر الآخر .. يمكن ذكر واحد و لكن لايمكن اهمال الأثنين
أعني بمثال أنه يمكن كتابة الأمر في الشكل التالي:
لا يلزم ذكر الأثنين معاً و لكن لا يمكن عدم كتابتهما معاً
طيب! الآن سوف أعرض عليكم التعابير التي استخدمتها لتحقيق ذلك
كخطوة أولى جربت التعرف على الأمر نفسه و هو الـ G-Code حيث أنه يوجد
G00,G01,G02,.. و هكذا .. استخدمت التعبير التالي:
و هذا نجح بالفعل أضفت له جزء آخر ليصبح:
و هنا بدأت المشكلة حيث أني عندما أكتب مسافة بعد X نتيجة التطابق
تكون إيجابية و يقبل التكرار أيضاً يعني
تكون مقبولة و هذا غير سليم ..
كل ما أريده تعبير يتحقق من شكل الأمر
حيث ترتيب الاحداثيات ليس ضروري و لا يمكن تكرار الاحداثي مرتين في السطر الواحد
و لا يمكن اهمالهما معاً أرجو المساعة و جزاكم الله خيراً
شارك هذا الرد
رابط المشاركة
شارك الرد من خلال المواقع ادناه