Pyparsing هى وحدة بايثونية بتساعد لإنشاء Grammer وتنفيذه بأسلوب بديل ل lex/yacc وايضا كبديل لإستخدام التعبيرات المنتظمة Regular Expressions وهى عبارة عن ملف وحيد
لمعالجة نص مثل "Hello, World”
لاحظ انه ينقسم الى عبارة الترحيب و الكومة و "اللذى تمت تحيته" –ايه اسم المفعول منها ؟؟؟
خلاص جميل
from pyparsing import Word, alphas
هنا استدعينا Word, alphas
ال Word عبارة عن token بيتكون من مجموعة احرف وهنا هى ال alphas وهى string داخل pyparsing قيمتها حروف الأبجدية
greet = Word( alphas ) + "," + Word( alphas ) + "!" # <-- grammar defined here
هنا قمنا بتحديد الجرامر .... Token من الحروف الأبجدية ثم كومة ثم Token اخر من الحروف الأبجدية واخيرا علامة تعجب
hello = "Hello, World!"
هنا ال input اللى هنعالجه
print hello, "->", greet.parseString( hello )
وهنا بعد معالجته والنتائج
Hello, World! -> ['Hello', ',', 'World', '!']
http://pyparsing.wikispaces.com/ شئ مريح جدا بدل ماتعقد نفسك وانت بتكتب S-Expr Parser ولاحاجة

ملحوظة: ال snippet اللى استخدمناها فى الشرح هتلاقيها فى الصفحة الرئيسية للموقع