Sun Java System Messaging Server 6 2005Q4 管理ガイド

PARSE_RE_0, PARSE_RE_1, ..., PARSE_RE_9

(文字列、UTF-8 正規表現) モバイルを起点とする電子メールの場合、ゲートウェイプロファイルは SMS メッセージのテキストから宛先電子メールアドレスを抽出する必要があります。これは、1 つまたは複数の POSIX 準拠の正規表現 (RE) を使用することによって処理されます。SMS メッセージのテキストは、各正規表現によって、宛先電子メールアドレスを生成する一致が見つかるか、あるいは正規表現のリストが尽きるまで評価されます。


注 –

PARSE_RE_*ROUTE_TO の各オプションの使用は、互いに排他的です。これらの両方を同一のゲートウェイプロファイルで使用すると、設定エラーになります。


各正規表現は、POSIX に準拠していて、UTF-8 文字セットにエンコードされている必要があります。正規表現では、宛先アドレスは文字列 0 として出力されます。状況に応じて、Subject: ヘッダー行で使用されるテキストは文字列 1 として、メッセージ本文で使用されるテキストは文字列 2 として出力されることがあります。正規表現によって「消費」されないテキストはいずれも、メッセージ本文で使用され、文字列 2 のテキスト出力に続きます。

正規表現は、PARSE_RE_0、PARSE_RE_1、... 、の順序で、PARSE_RE_9 まで試されます。正規表現が指定されていない場合、次に示すデフォルトの正規表現が使用されます。

[ \t]*([^\( ]*)[ \t]*(?:\(([^\)]*\))?[ \t]*(.*)

このデフォルトの正規表現は、次に示す構成要素から成ります。

[ \t]*

先頭のホワイトスペース文字 (SPACE および TAB) を無視します。

([^\( ]*)

宛先電子メールアドレス。これは最初に報告される文字列です。

[ \t]*

ホワイトスペース文字を無視します。

(?:\(([^\)]*)$1\))?

括弧で囲まれたオプションの件名テキスト。これは 2 番目に報告される文字列です。先頭の ?: によって、外側の括弧は文字列を報告しなくなります。括弧は、括弧内の内容を末尾の ? の単一の RE にグループ化するためにのみ使用されます。末尾の ? によって、この RE 構成要素は、0 回または 1 回のみ照合されます。これは {0,1} の表現と同等です。

[ \t]*

ホワイトスペース文字を無視します。

(.*)

残りのテキストをメッセージ本文へ。これは 3 番目に報告される文字列です。

例として、上記の正規表現で次のサンプル SMS メッセージを処理する場合を示します。

dan@sesta.com(Testing)This is a test

この場合、次の電子メールメッセージが生成されます。


To: dan@sesta.com
Subject: Testing

This is a test

別の例として、次の SMS メッセージの場合を示します。

sue@sesta.com This is another test

この場合、次の電子メールメッセージが生成されます。

To: sue@sesta.com

This is another test

これらの正規表現で評価される前に、SMS メッセージは Unicode のエンコード方式である UTF-16 に変換されることに注意してください。その後、変換されたテキストは、UTF-8 から UTF-16 に変換済みの正規表現で評価されます。評価の結果は、宛先電子メールアドレスの場合は US-ASCII に変換されます。Subject: テキスト (ある場合) には EMAIL_HEADER_CHARSET、メッセージ本文 (ある場合) には EMAIL_BODY_CHARSET が使用されます。