Регулярное выражение в Python не может анализировать строку, содержащую точку

#python #regex #string

#python #регулярное выражение #строка

Вопрос:

У меня возникла проблема с регулярным выражением Python.

 >>> import re
>>> print re.match('img', 'test.img')
None
>>> print re.match('test', 'test.img')
<_sre.SRE_Match object at 0x7f3fac8a0100>
>>>
  

Любой символ после точки (.) не будет проанализирован, есть ли способ решить эту проблему?

Комментарии:

1. Я склонен играть с регулярными выражениями для python здесь: pythonregex.com

Ответ №1:

re.match совпадает только в начале строки. Используйте search вместо этого. (См. search() Против match() )

 >>> import re
>>> re.match('img', 'test.img')
>>> re.search('img', 'test.img')
<_sre.SRE_Match object at 0x0000000002AB0100>