واحدة من المشكلات التي أواجهها أثناء التعامل مع الأنماط التعبيرية لبايثون (2.7 على الأقل) أنها تعتبر الحركات فاصلا للكلمة، ولذا فعند اختبار
re.findall(ur"\bأبو\b", u"أبوَاب")
فسيلتقط "أبو" في "أبوَاب".
يمكن التعلب على هذا العيب باستثناء الحركات:
re.findall(ur"\bأبو\b(?![ًٌٌٍَُِْ])", u"أبوَاب")
هل من وسيلة أخرى لتفادي العلة بطريقة أكفأ؟
التعليقات