2015-04-15 2 views
0

У меня возникают некоторые проблемы со следующим python. Я пытаюсь сопоставить строки, которые находятся внутри одинарных кавычек, но только захватывает содержимое, то есть бросает одиночные кавычки.Определение группы захвата Regex в Python

In [144]: tststr = "'hello'" 

In [145]: res = re.search(r"'(.*)'", tststr) 

In [146]: res.group() 
Out[146]: "'hello'" 

Я ожидаю, что выход будет содержать только «привет» без одинарных кавычек.

Благодарим за помощь!

ответ

3

Вам нужно указать индекс группы групп, в котором на самом деле хранятся захваченные символы. Без номера индекса res.group() напечатает все совпадающие символы в вашем случае, это было 'hello'.

res.group(1) 

Ex:

>>> tststr = "'hello'" 
>>> res = re.search(r"'(.*)'", tststr) 
>>> res.group(1) 
'hello' 
Смежные вопросы