Выбрать третье слово из строки, регулярные выражения
Есть такая строка:
string = "Прикрепление #1 doc vk.com/doc111111111_1111111111 (111111111_1111111111.ogg https://psv2.userapi.com/d/a1/afsg/asdwegesgsdffasdagrfehseferwgeXzMmuGqFlYrsaOSHvE3lzZmEQpfUAGahFoDDjV.ogg)"
из которой необходимо достать третье слово doc
.
Моих сил в регулярных выражениях хватило чтобы только выбрать первые три слова:
regex = "^[А-я]+\s+#\d+\s[A-z]+"
Вывод:
Прикрепление #1 doc
Как отделить от этой строки необходимое слово?
Ответы (1 шт):
Автор решения: jfs
→ Ссылка
Чтобы найти третье слово, отделенное пробелом, можно str.split()
использовать:
>>> n = 3; s.split(None, n)[n-1]
'doc'
Если нужно именно регулярное выражение:
>>> import re
>>> re.match(r"(\S+\s+){3}", s)[1]
'doc '
Это ожидает, что есть пробел после 3го слова—легко убрать это требование при желании.