import re 

pattern = r"\bsays to (.*(?:\n(?!\(\d|---).*?)*?)\s*\n(?:\(\d|---)"

text = ("(2021-07-04 11:58:43 PM BST)  \n"
	"---  \n"
	"len wee zim (Tradition (US) ) says to yohan sen  \n"
	"[[:Conversations will be recorded and may be monitored by the participants and\n"
	"their employers:]] Hi yohan  \n"
	"  \n"
	"  \n\n"
	"(2021-07-05 12:04:42 AM BST)  \n"
	"---  \n"
	"len wee zim (Tradition (US) ) says to yohan sen  \n"
	"okay -5 / 0  \n"
	"  \n"
	"  \n\n"
	"(2021-07-05 12:09:41 AM BST)  \n"
	"---  \n"
	"len wee zim (Tradition (Asia)) says to yohan sen  \n"
	"yes -5 / 0 TN -- / +2.5  \n"
	"  \n"
	"  \n"
	"---  \n"
	"  \n"
	"* * *\n\n"
	"Processed by wokl Archive for son malab | 2021-07-05 12:26:44 AM\n"
	"BST ")

text = re.findall(pattern, text)
print(text)