Python регулярные выражения, выдернуть нужные слова в list

Есть такой текст

srt = "
<p><strong>Услуга:</strong>&nbsp;orders.Orders.service</p>
Название - orders.Orders.123name<br>
Заказ номер orders.Orders.id
"

как написать регулярное выражение, чтобы из текста выдернуть все слова name1.name2.name3

то есть на выходе list = ['orders.Orders.service', 'orders.Orders.123name', 'orders.Orders.id'] итд


Ответы (3 шт):

Автор решения: A_Vaclav

Вот рабочий код на основе комментария ClickName

    import re
    def q_1320348(s):
        return re.findall(r'[a-zA-Z0-9]+\.[a-zA-Z0-9]+\.[a-zA-Z0-9]+', s)
    s = "<p><strong>Услуга:</strong>&nbsp;orders.Orders.service</p>Название -\
    orders.Orders.123name<br>Заказ номер orders.Orders.id"
    print(q_1320348(s))
→ Ссылка
Автор решения: Andy Pavlov

Еще вариант использовать re.finditer. В этом случае можно варьировать количеством искомых групп атрибутов.

import re
srt = """
<p><strong>Услуга:</strong>&nbsp;orders.Orders.service</p>
Название - orders.Orders.123name<br>
Заказ номер orders.Orders.id
orders.Orders2
"""

finds = [f.group(0) for f in re.finditer('(\w+(\.\w+){2})', srt)]  
# Фильтрует только последовательность attr_1.attr_2.attr_3. 
# Вариант attr_1.attr_2 будет отброшен

или

finds = [f.group(0) for f in re.finditer('(\w+(\.\w+)+)', srt)]  
# Фильтрует любую последовательность attr_1.attr_2...attr_n
→ Ссылка
Автор решения: A_Vaclav
import re
def q_1320348(s):
    return re.findall(r'[a-zA-Z0-9]+\.[a-zA-Z0-9]+\.[a-zA-Z0-9_]+', s)
s = "<p><strong>Услуга:</strong>&nbsp;orders.Orders.service_id</p>Название -\
orders.Orders.123name<br>Заказ номер orders.Orders.id"
print(q_1320348(s))
→ Ссылка