У меня есть строка в этом формате:
text = "Louis,Edward,John,Billy,Don,Dean"
Я бы хотел извлечь из этой строки все имена длиной от 2 до 4. Если в списке только одно имя, запятой нет:
text = "Louis"
Я пытаюсь с этим регулярным выражением:
import re
pattern = re.compile('(\w{2,4})(,\w{2,4})*')
search_result = pattern.findall('Louis,Edward,John,Billy,Don,Dean')
print(search_result)
Результат:
[('Loui', ''), ('Edwa', ''), ('rd', ',Bill'), ('Don', ',Dean')]
пока я ожидаю:
['John', 'Don','Dean']
Что я делаю не так?