Я пытаюсь выяснить регулярное выражение Ruby 1.8.7 для удаления потока из писем. Для этого мне нужно удалить все содержимое между границами почты, которое соответствует шаблону потока, например, в Mac Mail. Мне нужно будет удалить текст полужирным шрифтом (образец HTML упрощен, чтобы избежать использования большого количества пространства, настоящие письма, HTML гораздо менее емкая):Регулярное выражение для сопоставления содержимого между строками в ruby
From: XXXX ... mail headers ... Content-Type: multipart/alternative; boundary="Apple-Mail=_EFA7D6C2-C778-4C8E-AA13-C97DF1FA9036" ... more mail headers ... --Apple-Mail=_EFA7D6C2-C778-4C8E-AA13-C97DF1FA9036 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=us-ascii New comment added from Mac Mail On 12/06/2012, at 12:51, [email protected] wrote: > Thread > text > to be > removed >=20 --Apple-Mail=_EFA7D6C2-C778-4C8E-AA13-C97DF1FA9036 Content-Transfer-Encoding: quoted-printable Content-Type: text/html; charset=us-ascii <html>... lots of HTML... <span>On 12/06/2012, at 12:51, [email protected] wrote:</span> <span> Thread </span> <span> text </span> <span> to be </span> <span> removed </span> <span>=20 </span> </html>= --Apple-Mail=_EFA7D6C2-C778-4C8E-AA13-C97DF1FA9036--
регулярное выражение, которое я думал, что буду захватить необходимый текст является:
--Apple-Mail=_EFA7D6C2-C778-4C8E-AA13-C97DF1FA9036.+?(\bOn.+?)(?!--Apple-Mail=_EFA7D6C2-C778-4C8E-AA13-C97DF1FA9036)
Но это не работает, не захватывая от границы справа до первого «Вкл.».
Извините, я должен был добавить, что пример был фактически упрощением от настоящего электронного письма. Вопрос обновлен. – Anero