التعامل مع الحركات في الأنماط التعريفية لبايثون؟

واحدة من المشكلات التي أواجهها أثناء التعامل مع الأنماط التعبيرية لبايثون (2.7 على الأقل) أنها تعتبر الحركات فاصلا للكلمة، ولذا فعند اختبار

re.findall(ur"\bأبو\b", u"أبوَاب")

فسيلتقط "أبو" في "أبوَاب".

يمكن التعلب على هذا العيب باستثناء الحركات:

re.findall(ur"\bأبو\b(?![ًٌٌٍَُِْ])", u"أبوَاب")

هل من وسيلة أخرى لتفادي العلة بطريقة أكفأ؟


التعليق السابق

رائع، رائع إسلام. شكرا جزيلا! مجموعة لينكس الرياض محظوظة. ;)

العفو أخي أسامة