Как позже выяснилось, вам нужно было сопоставить любую строку и серию слов. Чтобы достичь этого, я добавил еще несколько примеров, чтобы прояснить, что делают оба предложенных похожих регулярных выражения:
text = """the quick brown fox
another line with single and multiple spaces
some other instance with six words"""
Соответствует целым линиям
Первый соответствует всей строке, итерируя по одиночным строкам
pattern1 = re.compile(r'((?:\w+)(?:\s+|$))+')
for i, line in enumerate(text.split('\n')):
match = re.match(pattern1, line)
print(i, match.group(0))
Его вывод:
0 the quick brown fox
1 another line with single and multiple spaces
2 some other instance with six words
Совпадение целых строк
Второй сопоставляет отдельные слова и повторяет их по одному, повторяя по одной строке:
pattern2 = re.compile(r'(\w+)(?:\s+|$)')
for i, line in enumerate(text.split('\n')):
for m in re.finditer(pattern2, line):
print(m.group(1))
print()
Его вывод:
the
quick
brown
fox
another
line
with
single
and
multiple
spaces
some
other
instance
with
six
words