الفرق بين المراجعتين لصفحة: «Python/re/error»
لا ملخص تعديل |
لا ملخص تعديل |
||
سطر 63: | سطر 63: | ||
[[تصنيف:Python]] | [[تصنيف:Python]] | ||
[[تصنيف:Python Regular Expressions]] | [[تصنيف:Python Regular Expressions]] | ||
[[تصنيف:Python Modules]] | |||
[[تصنيف:Python Exceptions]] |
مراجعة 10:16، 12 يونيو 2018
تطلق اللغة هذا الاستثناء عند تمرير سلسلة نصية غير صالحة كتعبير نمطي إلى إحدى الدوال السابقة (كأن تتضمن السلسلة أقواسًا غير متطابقة)، أو عند حدوث أخطاء أخرى أثناء عملية التصريف أو المطابقة. لا يعد خلوّ السلسلة النصية من التطابقات خطأً على الإطلاق.
البنية العامة
re.error(msg, pattern=None, pos=None)
الخصائص
تمتلك نسخة الخطأ الخصائص الإضافية التالية:
msg
رسالة الخطأ غير المنسّقة.
pattern
التعبير النمطي.
pos
موقع حدوث الخطأ في تصريف التعبير النمطي (قد يأخذ القيمة None
).
lineno
السطر الحاوي على قيمة الخاصية pos
(قد يأخذ القيمة None
).
colno
العمود الحاوي على قيمة الخاصية pos
(قد يأخذ القيمة None
).
ملاحظة: أضيفت الخصائص الإضافية في الإصدار 3.5 من اللغة.
أمثلة
يبين المثال التالي طريقة الاستفادة من هذا الاستثناء:
>>> import re
>>> try:
... p = re.compile(r'[a-z[')
... except re.error as err:
... print (err)
... print ('Error message: ' + err.msg)
... print ('Error position: ' + str(err.pos))
... print ('Regular expression: ' + err.pattern)
... print ('Error Line number: ' + str(err.lineno))
... print ('Error column number: ' + str(err.colno))
...
...
unterminated character set at position 0
Error message: unterminated character set
Error position: 0
Regular expression: [a-z[
Error Line number: 1
Error column number: 1