Для примера с датой, можно разбить на такой паттерн
^ - начало строки
\d{2} - две цифры (день месяца)
\s - пробельный символ
\w+ - одно или более словесных символов (месяц). Но только в том случае если всегда повторяющийся.
const dateStr = '02 апреля, 21:10';
const dateRegex = /^(\d{2}\s\w+)/;
const match = dateStr.match(dateRegex);
if (match) {
const date = match[1];
console.log(date); // '02 апреля'
}
Для самары можно разбить на сам город,
\s* - пробелы,
(.*) - все после. Если Самара тоже динамический параметр и вам есть откуда его барть, то можно сохранять в переменную и добавлять в регулярку.
const str = 'Алабинскаяот 31 мин.Российскаяот 31 мин.Московскаяот 31 мин.Самарская область, Самара, Буянова ул. , 42';
const regex = /Самара,\s*(.*)/;
const match = str.match(regex);
if (match) {
const result = match[1];
console.log(result); // 'Буянова ул. , 42'
}