1

検証部分をカバーしました。

メールをコンポーネントに解析するだけです。

電子メールが有効であると仮定すると...

最初の「@」をさかのぼって見て、それ以降はすべてドメインですか?

そして、後ろにスペースを探して、その後のすべてが電子メールアドレスから引用された名前を除いたものですか?

4

2 に答える 2

4

作業がすでに完了しているのに、なぜ自分で解析する必要があるのでしょうか (そして、間違ってしまう危険があります)。

Mime4jライブラリ ( http://james.apache.org/mime4j/ ) には、(電子メールの処理に関連する他の多くのものの中でも)電子メール アドレス (グループと個々のメールボックス、およびアドレス リストを含む) を解析するためのメソッドを持つクラスが含まれています。それらは電子メールのヘッダーに表示される場合があります) それらを表すオブジェクト (クラスとそのサブクラスのインスタンス、および) に変換されます。返されたオブジェクトには、各アドレスの個々のコンポーネント (ローカル部分、ドメイン、人間が読める名前など) へのアクセスを提供するメソッドがあります。AddressBuilderAddressGroupMailbox

AddressBuilderクラスの Javadoc はhttp://james.apache.org/mime4j/apidocs/org/apache/james/mime4j/field/address/AddressBuilder.htmlにあります。

于 2013-09-11T05:37:58.893 に答える
0

はい、アドレスが RFC 822 に準拠している場合、@符号は 1 つだけであり、それを分割してローカル部分とドメインを判別できます。 RFC 2822 のセクション 3.4.1 を参照してください。

于 2013-09-11T05:26:32.220 に答える