Можно использовать опцию выбора символа пробела " \\ s ". Эта строка " (. | \\ s) " представляет любой символ или пробела.
str_match_all(test, "here((.|\\s)*?)text")
[[1]]
[,1] [,2] [,3]
[1,] "here \nis \nsome \ntext" " \nis \nsome \n" "\n"
РЕДАКТИРОВАТЬ
Вот еще одна форма, которая работает лучше (только две части, но все еще дополнительный разрыв строки в конце):
str_match_all(test, "here([[[:alnum:]]|[[:space:]]]+?)text")
[[1]]
[,1] [,2]
[1,] "here \nis \nsome \ntext" " \nis \nsome \n"