Регулярните изрази се компилират до инстанции на RegexObject, които
разполагат с методи за извършване на различни операции като претърсване за
съвпадения по образец или заместване на символни низове.
>>> import re
>>> p = re.compile('ab*')
>>> print p
<re.RegexObject instance at 80b4150>
re.compile() приема и един незадължителен аргумент flags,
който се използва, за да се включат различни специални възможности или
разновидности на синтаксиса. По-късно ще разгледаме наличните настройки, а
засега ще видим един прост пример:
>>> p = re.compile('ab*', re.IGNORECASE)
РИ се предава на re.compile() като символен низ. Регулярните изрази
се третират като символни низове, понеже не са част от ядрото на езика Питон и
не е създаден специален синтаксис за изразяването им. (Съществуват приложения,
които изобщо не се нуждаят от РИ, така че няма смисъл да се натоварва
спецификацията на езика.) Вместо това, re е просто разширителен
модул, написан на C, точно както и модула string.От
версия 2.0 на Питон, модулът string не е чак толкова самостоятелен,
тъй като повечето от функциите му всъщност препращат към съответните методи
на обектите от тип символен низ. Преди това тези функции действително бяха
реализирани в модула string.
Поставянето на РИ в символни низове запазва простотата на езика Питон, но води
до един недостатък, на който е посветен следващия раздел.