Skip to forum content
PyDev
Форум python-разработчиков
You are not logged in.
Please login or register.
Root
»
Python
»
Непонятка с модулем re
Pages:
You must log in or register to post a new topic
Posts [ 1 to 5 of 5 ]
- Registered: 2008-12-28 01:44:06
- Posts: 2
Вобщем такая странная штука (питон 2.5):
re.match('ab','abcde') - работает, т.е. True
теперь:
re.match('bс','abcde') - None ! т.е. не находит, т.е. не пашет
Собствено не могу понять почему, perl и php говорят что все ок, True, а питон оказывается другого мнения по этому поводу. Вобщем
я немного смущен.
- Registered: 2007-09-19 15:30:16
- Posts: 182
читай доку или здесь
http://www.intuit.ru/department/pl/python/6/5.html
"""
match(s)
Сопоставляет строку s с шаблоном, возвращая в случае удачного сопоставления объект с результатом сравнения (объект SRE_Match). В случае неудачи возвращает None. CОПОСТАВЛЕНИЕ НАЧИНАЕТСЯ ОТ НАЧАЛА СТРОКИ.
search(s)
Аналогичен match(s), но ищет подходящую подстроку по всей строке s.
"""
А вообще - рекомендую юзать метод findall. =)
- Registered: 2007-02-02 21:35:43
- Posts: 422
Грубо говоря, match(r'foo') это search(r'^foo')
- Registered: 2009-02-23 00:14:50
- Posts: 3
re.match('bс','abcde')
вообще-то не мешало бы почитать что такое регекспы.
вот так:
re.match('.*(bc)','abcde').group(1)
находит
- Registered: 2007-02-02 21:35:43
- Posts: 422
'bc' - это вполне себе regexp, просто match неявно добавляет ^ к регулярному выражению.
Root
»
Python
»
Непонятка с модулем re