Анализатор электронной почты Java - PullRequest
2 голосов
/ 12 сентября 2011

Я должен разобрать сообщение электронной почты, как это, и выяснить тело, дату и т. Д. Любая помощь будет принята.

Date:        XXXXX
Reply-To:     XXXXX
Sender:       XXXXX
From:        XXXX
Subject:     Test
In-Reply-To:  XXXX
Mime-Version: 1.0
Content-Type: multipart/alternative; boundary="=__Part416ABDAE.0__="
=__Part416ABDAE.0__=
 Content-Type: text/plain; charset=US-ASCII
 Content-Transfer-Encoding: quoted-printable
Test

Ответы [ 2 ]

2 голосов
/ 12 сентября 2011

Вот решение для регулярных выражений:

import java.util.regex.*;

class Test {

    public static void main(String[] args) {

        String input = "Date:        XXXXX\n"
                     + "Reply-To:     XXXXX\n"
                     + "Sender:       XXXXX\n"
                     + "From:        XXXX\n"
                     + "Subject:     Test\n"
                     + "In-Reply-To:  XXXX\n"
                     + "Mime-Version: 1.0\n"
                     + "Content-Type: multipart/alternative; " +
                                 "boundary=\"=__Part416ABDAE.0__=\"";

        Pattern p = Pattern.compile("(.*?):\\s+(.*)");
        Matcher m = p.matcher(input);
        while (m.find()) {
            System.out.println("Key: " + m.group(1));
            System.out.println("Val: " + m.group(2));
            System.out.println();
        }
    }
}

Выход:

Key: Date
Val: XXXXX

Key: Reply-To
Val: XXXXX

Key: Sender
Val: XXXXX

Key: From
Val: XXXX

Key: Subject
Val: Test

Key: In-Reply-To
Val: XXXX

Key: Mime-Version
Val: 1.0

Key: Content-Type
Val: multipart/alternative; boundary="=__Part416ABDAE.0__="
0 голосов
/ 13 августа 2012

Если вы серьезно относитесь к анализу электронной почты (и это не задание по синтаксическому анализу домашней работы), вам следует взглянуть на Mime4J .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...