#ruby #regex #rubular
#ruby #регулярное выражение #rubular
Вопрос:
Может ли кто-нибудь помочь мне сопоставить текст между From и первым появлением Subject из следующего набора строк,
Ввод
Random Line 1
Random Line 2
From: person@example.com
Date: 01-01-2011
To: friend@example.com
Subject: This is the subject line
Random Line 3
Random Line 4
Subject: This is subject
This is the end
Вывод
From: person@example.com
Date: 01-01-2011
To: friend@example.com
Subject: This is the subject line
Я попробовал со следующим регулярным выражением,
/(From:.*(?i)Subject:.*?)n/m
Приведенное выше регулярное выражение выбирает до последнего предмета
Комментарии:
1. @AvinashRaj Я мало работал с регулярными выражениями. Можете ли вы подробно объяснить мне модификатор dotall?
Ответ №1:
Это работает (см.: http://rubular.com/r/Lw9rhfwVGt ):
/(From.*?Subject.*?)n/m