Я предполагаю, что ключевые слова, которые вы хотите извлечь, всегда находятся в одном шаблоне. В этом примере я добавил еще один.
test_str = '''validateId(id, name) && id=="123"
ParameterValue(Test, name) && Test=="123"'''
Соответствует шаблону предоставленной тестовой строки. В результате ìd
и test
.
reg_keyword = '(?<=\()(\w+)|(?<=&&\s)(\w+)'
re.findall
в этом случае возвращает кортеж, в котором мы удаляем пустые значения и возвращаем список.
keyword = [k[0] for k in re.findall(reg_keyword, test_str) if len(k[0])>1]
Выход
['id', 'Test']