Я хочу получить первое совпадение регулярного выражения.
В этом случае у меня получился список:
text = 'aa33bbb44'
re.findall('\d+',text)
['33', '44']
Я мог извлечь первый элемент списка:
text = 'aa33bbb44'
re.findall('\d+',text)[0]
'33'
Но это работает, только если есть хотя бы одно совпадение, иначе я получу ошибку:
text = 'aazzzbbb'
re.findall('\d+',text)[0]
IndexError: список индекса вне допустимого диапазона
В этом случае я мог бы определить функцию:
def return_first_match(text):
try:
result = re.findall('\d+',text)[0]
except Exception, IndexError:
result = ''
return result
Есть ли способ получить этот результат без определения новой функции?
len(re.findAll)==0вместо этого использовать проверку.