Если вы пытаетесь подсчитать количество совпадений, значит, вы используете неправильный метод.split
предназначен для того, чтобы взять строку и нарезать ее на кусочки, но, как вы заметили, если совпадений нет, то все возвращается.Я думаю, что вы хотите использовать String.scan
вместо:
message.scan(/\n.* at.* XXXXXXXX wrote:.*/m).size