Заставить hubot отвечать на многострочное сообщение

У меня есть сценарий, в котором я хочу, чтобы hubot что-то разобрал. Команда будет hubot parse this thing <the content>

Проблема в том, что контент, как правило, представляет собой вставленный длинный фрагмент текста, который обычно содержит символы новой строки (разрывы строк). Вот мое регулярное выражение:

/parse this thing (.*\s*)/i

Я могу получить ответ просто отлично, но читается только первая строка содержимого. Есть ли способ заставить его прочитать весь вставленный контент, включая все строки?

ИЗМЕНИТЬ:

Добавление + заставляет читать весь вставленный контент, но сохраняет только последнюю строку:

/parse this thing (.*\s*)+/i

person Willem Ellis    schedule 26.06.2014    source источник


Ответы (3)


Догадаться! Для справки в будущем (я плохо разбираюсь в регулярных выражениях):

/parse this thing ((.*\s*)+)/i
person Willem Ellis    schedule 26.06.2014

Это также будет работать:

/parse this thing ((.|\s)+)/i

Один или несколько любых символов или пробелов

person Andrew Potter    schedule 21.01.2015

Как описано в разделе Как использовать регулярное выражение JavaScript в нескольких строках? это кажется лучшим решением для использования

/parse this thing ([\s\S]+)/i
person Radek 'Goblin' Pieczonka    schedule 04.01.2018