Как извлечь определенные матчи с использованием регулярных выражений в Python?

голоса
0

Я пытаюсь извлечь некоторые матчи с использованием регулярных выражений в Python.

Ниже приведен пример списка у меня есть

x = ['PF13833.6', 'EF-hand_8', 'EF-hand domain pair', '34-72', 'E:1.6e-05`PF00036.32', 'EF-hand_1', 'EF hand', '48-73', 'E:1.6e-06`PF13202.6', 'EF-hand_5', 'EF hand', '49-71', 'E:0.004`PF13499.6', 'EF-hand_7', 'EF-hand domain pair', '86-148', 'E:9.6e-16`PF13405.6', 'EF-hand_6', 'EF-hand domain', '87-115', 'E:1.9e-06`PF13833.6', 'EF-hand_8', 'EF-hand domain pair', '100-148', 'E:5.2e-11`PF00036.32', 'EF-hand_1', 'EF hand', '123-149', 'E:5.5e-08`PF13202.6', 'EF-hand_5', 'EF hand', '129-148', 'E:0.00047']

А вот регулярное выражение, которое я попробовал, который работал, чтобы извлечь PF идентификаторов

re.findall(r'PF\d+\.\d+', str(x), re.MULTILINE|re.IGNORECASE)
['PF13833.6', 'PF00036.32', 'PF13202.6', 'PF13499.6', 'PF13405.6', 'PF13833.6', 'PF00036.32', 'PF13202.6']

Но я хочу, чтобы извлечь следующее слово после матча. Например

['PF13833.6', 'EF-hand_8', 'PF00036.32', ''EF-hand_1'' and son on..]

Как я могу изменить свой шаблон для достижения требуемой выходной?

Задан 19/03/2020 в 22:05
источник пользователем
На других языках...                            

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more