関数の返す型は以下の通りです。
ブール型関数 | : | ブール型 |
文字列型関数 | : | 文字列型 |
アドレス型関数 | : | アドレス型 |
評価型関数 | : | 任意の型 |
フィールド型関数 | : | フィールド型 |
数値型関数 | : | 数値型 |
日付型関数 | : | 日付型 |
パート型関数 | : | パート型 |
関数の引数の型は以下の通りです。
Boolean | : | ブール型 |
String | : | 文字列型 |
Address | : | アドレス型 |
Field | : | フィールド型 |
Number | : | 数値型 |
Date | : | 日付型 |
Value | : | 任意の型 |
Part | : | パート型 |
Expr | : | 式 |
引数の後ろに付く記号が+の場合は1つ以上の引数をカンマ区切りで指定することを、?の場合は省略可能で指定する場合は1つであることを示します。また、*の場合は省略可能でかつ+同様に複数指定もできることを示します。
説明文中「そのメール」というのはマクロが参照したメールを差します。
つまり、テンプレートの場合返信や転送、表示の元になるメールを、振り分けルールの場合は振り分け条件のチェックを行っているメールです。
[目次へ]
戻り値として真、または偽を返します。
・真を返します。
・偽を返します。
・そのメールが既読だと真、未読だと偽を返します。
・第一引数が指定されているとそのフラグを変更します。真だと既読にし、偽だと未読にします。
・そのメールがマークされていると真、マークされていないと偽を返します。
・第一引数が指定されているとそのフラグを変更します。真だとマークし、偽だとマークを外します。
・そのメールが返信されていると真、返信されていないと偽を返します。
・第一引数が指定されているとそのフラグを変更します。真だと返信済みにし、偽だと未返信にします。
・そのメールが転送されていると真、転送されていないと偽を返します。
・第一引数が指定されているとそのフラグを変更します。真だと転送済みにし、偽だと未転送にします。
・そのメールが送信済みだと真、送信済みでないと偽を返します
・第一引数が指定されているとそのフラグを変更します。真だと送信済みにし、偽だと未送信にします。
・そのメールがドラフトだと真、ドラフトでないと偽を返します。
・第一引数が指定されているとそのフラグを変更します。真だとドラフトにし、偽だとドラフトでなくします。
・そのメールがマルチパートだと真、マルチパートでないと偽を返します。
・そのメールが部分的にダウンロードされていると真、すべてダウンロードされていると偽を返します。
・そのメールに削除マークが付いていると真、そうでないと偽を返します。
・第一引数が指定されているとそのフラグを変更します。真だと削除マークを付け、偽だと削除マークを取ります。
・第一引数が真だと偽、偽だと真を返します。
例:
@Not(@Seen())
そのメールが既読ならば偽、未読ならば真を返します。
・すべての引数が真だと真、そうでなければ偽を返します。
・ある引数が偽なら、それ以降の引数は評価されません。
例:
@And(@Seen(), @Marked(), @Replied())
そのメールが既読かつマークされており、さらに返信済みの場合は真を返します。
・すべての引数が偽なら偽、そうでなければ真を返します。
・ある引数が真なら、それ以降の引数は評価されません。
例:
@Or(@Replied(), @Forwarded(), @Sent())
そのメールが返信済みまたは転送済みまたは送信済みであれば真を返します。
・第一引数と第二引数を比較して同じならば真、そうでなければ偽を返します。
・第一引数と第二引数の両方がブール型ならば、ブール型として比較。それ以外は、文字列型に変換して比較します。
・第三引数が真の場合、大文字小文字を区別します。省略時は偽が指定されたものとします。
例:
@Equal(Reply-To, 'HogeHoge@fugafuga.ne.jp', @True())
そのメールのReply-ToヘッダがHogeHoge@fugafuga.ne.jpであれば真を返します。比較の際、大文字小文字を区別します。
@Equal(@Seen(),@Partial())
そのメールが未読かつ部分ダウンロードされているか、既読かつ完全ダウンロードされていれば真、それ以外は偽を返します。
・第一引数と第二引数を比較して第一引数が大きいならば真、そうでなければ偽を返します。
・第一引数と第二引数の両方がブール型ならば、ブール型として比較。それ以外は、文字列型に変換して比較します。
・第三引数が真の場合、大文字小文字を区別します。省略時は偽が指定されたものとします。
例:
@Greater($n, 20)
$nの値が20より大きければ真、そうでなければ偽を返します。
・第一引数と第二引数を比較して第一引数が小さいならば真、そうでなければ偽を返します。
・第一引数と第二引数の両方がブール型ならば、ブール型として比較。それ以外は、文字列型に変換して比較します。
・第三引数が真の場合、大文字小文字を区別します。省略時は偽が指定されたものとします。
例:
@Less($m, 10)
$mの値が10より小さければ真、そうでなければ偽を返します。
・第一引数に、第二引数が含まれていたら真、そうでなければ偽を返します。
・第三引数が真の場合、大文字小文字を区別します。省略時は偽が指定されたものとします。
例:
@Contain(To, @Address(@I()))
そのメールのToヘッダに自分のアドレスが含まれていたら真を返します。
・第一引数が、第二引数から始まっていたら真、そうでなければ偽を返します。
・第三引数が真の場合、大文字小文字を区別します。省略時は偽が指定されたものとします。
例:
@BeginWith(@Column('subject'),'[qs:')
そのメールのSubjectヘッダが'「qs:'で始まっていたら真を返します。
・第一引数で指定されたフィールドが存在すれば真、そうでなければ偽を返します。
例:
@Exist('X-ML-Name')
そのメールにX-ML-Nameヘッダが存在すれば真を返します。
・第一引数で指定された日数経っていたら真を返します。そうでなければ偽を返します。
例:
@Passed(7)
そのメールが7日経過していたら真、そうでなければ偽を返します。
・第一引数で指定した名前で関数を定義します。
・関数の本体は第二引数の中身になります。
・関数の引数は、$0から順に取得することができます。ただし、$0は関数本体の
名前になり、$1からが関数に渡された引数になります。
・関数の登録が成功した場合には真を、それ以外の場合には偽を返します。
例:
@Progn(@Defun('Msg', @MessageBox($1)), @Msg('hoge'))
このようにすることで、MessageBoxの第一引数だけが同じ@Msgを定義することができます。@Msgに渡された引数は、関数定義内では、$1のようにして取得できます。
戻り値として文字列を返します。
・ヘッダの文字列を返します。
・第一引数を指定すると、そのフィールドを取り去ります。複数のフィールドを取り去りたい場合、フィールド名を','で区切ります。
・第二引数を指定すると、そのパートのヘッダを取得します。
例:
@Header('X-Mailer,Posted,Cc')
そのメールのヘッダのうちX-Mailer/Posted/Ccフィールドを削除して返します。
・本文の文字列を返します。
・第一引数は、引用文字列です。指定されていると各行頭に挿入されます。
・第二引数が真ならばテキストのみ、そうでなければすべての本文を返します。
・第三引数が真ならば添付ファイルが付いている場合に、その旨を示す文字列を付加します。
・第二・第三引数は省略時、偽が指定されたものとします。
・第四引数を指定すると、そのパートの本文を取得します。
例:
@Body('> ',@True(), @True())
引用符として'> 'を行頭に挿入し、本文のテキストのみを返します。
添付ファイルがあればその旨を示す文字列を付加します。
・アドレス帳を開いて、選択されたアドレスを連結した文字列を返します。
・第一引数は、アドレス帳に表示するタイトル。省略時は何も表示しません。
例:
@AddressBook('To')
アドレス帳をタイトルに'To'と表示して開きます。そして、選択されたアドレスを複数の場合は連結して返します。
・選択されたアドレスをヘッダに挿入できる形で返します。
・第一引数はToのデフォルト値です。
・第ニ引数はCcのデフォルト値です。
・第三引数はBccのデフォルト値です。
・第一引数から第三引数まで省略可能です。
例:
@AddressBook2('','','hogehoge@dokodoko.ne.jp')
To/Ccフィールドは空、Bccフィールドにはデフォルトで'hogehoge@dokodoko.ne.jp'を挿入してアドレス選択のダイヤログを開かれます。そこでアドレスを選択し、To/Cc/Bccのそれぞれのフィールドにセットします。
アドレスが選択されているフィールドのみヘッダの形式で文字列を返します。
・サブジェクトを返します。
・第一引数が真ならば、先頭の'Re: 'を取ります。
・第二引数が真ならば、先頭のメーリングリスト名を取ります。
・各引数の省略時は偽が指定されたものとします。
例:
@Subject(@True(), @True())
そのメールのSubjectフィールドから先頭の'Re: 'とメーリングリスト名を削除したものを返します。
・第一引数はフォーマットする日付です。
・第二引数はフォーマットを指定する文字列です。
%Y{4|2} | : | 年 (%Y4は4桁に、%Y2は2桁になります) |
%M{0|1} | : | 月 (%M0は数字で表示。%M1は英語の省略形(Jan, Feb, ...)になります) |
%D | : | 日 |
%h | : | 時間 |
%m | : | 分 |
%s | : | 秒 |
%z | : | タイムゾーン ({+|-}xxxxの形式) |
0 | : | GMT |
1 | : | ローカルタイム |
2 | : | オリジナルのタイムゾーン |
例:
@FormatDate(@Date(), '%Y4/%M0/%D %h:%m:%s')
現在の日時をローカルタイムで'%Y4/%M0/%D %h:%m:%s'にフォーマットして返します。
@FormatDate(@Date(Date), '%Y4/%M0/%D %h:%m:%s %z', 0)
@FormatDate(@Date(Date), '%Y4/%M0/%D %h:%m:%s %z', 1)
@FormatDate(@Date(Date), '%Y4/%M0/%D %h:%m:%s %z', 2)
前の例にタイムゾーンを追加したフォーマットにそのメールのDateヘッダの内容を変換して返します。
例えばそのメールのDateフィールドが'Mon, 01 Jan 2001 22:00:00 +0100'でローカルタイムが日本時間の場合、
上記例の結果はそれぞれ、
2001/01/01 21:00:00 +0000
2001/01/02 06:00:00 +0900
2001/01/01 22:00:00 +0100
となります。
・リストビューに表示されている値を取得します。
・第一引数は以下の値のいずれかです。
'date'
'from'
'subject'
これ以外の値はエラーとなります。
例:
@Column('subject')
リストビューに表示されているSubjectフィールドを返します。
通常は受信後にデコードされた内容となります。但し、.mlmapで変換する前の状態です。
@Column('date')
リストビューに表示されているDateフィールドを返します。但し、リストビューのDateフィールドは送信側のタイムゾーンを使用する設定か否かで表示日時が違います。
例えばそのメールのDateフィールドが'Mon, 01 Jan 2001 22:00:00 +0100'の場合、送信側のタイムゾーンを使用する設定をしていると'2001/01/01 22:00'が返ります。
送信側のタイムゾーンを使用しない設定をしている時は、QMAIL2を利用している地域の設定に合わせた日時に変換されたものが返ります。地域が日本の場合'2001/01/02 06:00'となります。
・引数の文字列を連結した文字列を返します。
例:
@Concat('In-Reply-To: ', Message-Id, '\n')
'In-Reply-To: そのメールのMessage-Idフィールド\n'という文字列を返します。(\nは改行コード)
・第一引数に第二引数が含まれる場合、それより後ろの文字列を返します。含まれない場合には、空文字列を返します。
・第三引数が真の場合、大文字小文字を区別します。省略時は偽が指定されたものとします。
例:
@SubstringAfter(@Address(@I()), '@')
自分自身のアドレスの'@'より後ろの文字列を返します。
自分自身のアドレスが'hogehoge@fugafuga.ne.jp'ならば'fugafuga.ne.jp'が返ってきます。
自分自身のアドレスが'hogehoge'の場合、空文字列('')が返ってきます。
・第一引数に第二引数が含まれる場合、それ以前の文字列を返す。含まれない場合には、空文字列を返します。
・第三引数が真の場合、大文字小文字を区別します。省略時は偽が指定されたものとします。
例:
@SubstringBefore(@Address(from), '@')
そのメールのFromフィールドのアドレスの'@'より前の文字列を返します。
Fromフィールドのアドレスが'hogehoge@fugafuga.ne.jp'ならば'hogehoge'が返ってきます。
Fromフィールドのアドレスが'hogehoge'の場合、空文字列('')が返ってきます。
・第一引数から文字を切り出します。
・第二引数は切り出し開始位置のインデックス。先頭は0です。
・第三引数は切り出す長さを指定します。
・第三引数が省略されると、最後まで切り出します。
・第二引数が第一引数の長さより大きい場合には、空文字列を返します。
例:
@Substring(@Address(@I()), '0', '8')
自分自身のアドレスの先頭から8文字を切り出して返します。
自分自身のアドレスが'hogehoge@fugafuga.ne.jp'ならば'hogehoge'が返ってきます。
・第一引数をデコードして返します。
例:
@Decode(From)
そのメールのFromフィールドをデコードして返します。
@Decode('QMAIL2=?ISO-2022-JP?B?GyRCJV4lLyVtJV4lSyVlJSIlaxsoQg==?=')
指定された文字列をデコードして返します。
この例ではMIMEデコード後に'QMAIL2マクロマニュアル'という文字列を返します。
・第一引数が偽の場合、現在のアカウント名を返します。
・第一引数が真の場合、現在のサブアカウント名を返します。
・第一引数のデフォルトは偽です。
例:
@Account(@True())
現在のサブアカウント名を返します。
・現在のIdentity名を返します。
・そのメールのフォルダ名を返します。
・引数が真の時にはフルネームを、偽の時には名前を返します。省略時は真が指定されたものとします。
例:
@Folder(@True())
そのメールが入っているフォルダ名をフルネームで返します。
・第一引数で指定されたパスのファイルを読み込んで内容を返します。
・第一引数で相対パスを指定した場合、現在開いているテンプレートが基準に、振り分けルールや検索時に指定した場合はメールボックスディレクトリが基準になります。
・第二引数が真だと、指定されたパスのファイルをテンプレートとして解釈します。省略時には、偽が指定されたものとします。
例:
@Load('info.template',@True())
指定されたファイルをテンプレートとして読み込みます。
・メールのReferencesヘッダを返します。
・第一引数が指定された場合、最大その個数まで返します。
・第一引数が省略された場合、すべて返します。(@Field('References')と同義)
例:
@References(3)
そのメールのReferencesフィールドから3個までを返します。
・現在のクリップボードの内容を返します。
・テキスト以外が入っているときや、クリップボードの中が空の時には空文字列を返します。
・テンプレートでのみ使用できます
・第一引数が指定された場合、そのURLをパースしてできたメッセージを返します。
・第一引数が指定されない場合、内部のURLバッファをパースしてできたメッセージを返します。内部のURLバッファには、起動時に-sで渡した結果の文字列が格納されています。
・mailto URL以外の文字列を渡したときの結果は不定です。
・第一引数を指定しない場合、テンプレートでのみ使用できます。
例:
@ParseUrl('hogehoge@dokodoko.co.jp')
'To: hogehoge@dokodoko.co.jp'という文字列を返します。
通常、url.templateに第一引数無しで記入しておき、mailtoの関連付けとして"qmail.exe -s %1"としていると、mailtoリンクをクリックした時にQMAIL2のエディットビュー(外部エディタが指定されている場合には外部エディタ)が開き、その時メールヘッダの一部(ToフィールドやSubjectフィールド)をURLバッファから生成させるといった利用法で用います。
・第一引数で指定されたフィールドの、第二引数で指定されたパラメータの値を返します。
・第二引数を省略するとパラメータ以外のフィールドの値を返します。
・第三引数を指定すると、そのパートのフィールドを取得します。
例:
@Set('work',@FieldParameter('Content-Type','boundary'))
Content-Typeフィールドのboundaryパラメータの値を変数workにセットします。
・OSの名前とバージョンを返します。返される形式は、X-Mailerに付加される形式と同一です。
例:
@Set('work',@OSVersion())
OSの名前とバージョン('Windows 95 B'など)を変数workにセットします。
コンピュータの名前を返します。
・添付ファイル名のリストを返します。
・それぞれのファイル名は第一引数で指定した文字列で区切られます。
・第一引数が省略された場合、', 'で区切られます。
例:
@Attachment(' / ')
添付ファイルのリストを' / 'で区切って返します。
・ダイアログを出してユーザに入力を要求し、入力された文字列を返します。
・一番目の引数に表示するメッセージを指定します。
・二番目の引数が真だと複数行のダイアログを出します。それ以外の場合、単数行のダイアログを出します。デフォルトは偽です。
・三番目の引数に値のデフォルト値を指定します。
例:
@InputBox('入力して下さい',@False(),'Yes')
ダイアログを出して入力を要求します。
デフォルト値として'Yes'がセットされています。
戻り値としてアドレスまたは名前のリストを返します。
・第一引数として使えるのは以下のとおりです。
'i'
'to'
'cc'
'bcc'
'from'
'reply-to'
'sender'
'errors-to'
'resent-to'
'resent-cc'
'resent-bcc'
'resent-from'
'resent-sender'
これ以外の場合にはエラーとなります。
・指定されたヘッダの値からアドレスのリストを作ります。
・第一引数として'i'が指定された場合には、自分自身のアドレスになります。
'i'の変わりに関数@I()を使用しても同じです。
例:
@Address(to)
そのメールのToフィールドからアドレスリストを作成します。
・第一引数として使用できるのは@Addressと同じです。
・指定されたヘッダの値から名前のリストを作ります。
・第一引数として'i'が指定された場合には、自分自身の名前になります。
'i'の変わりに関数@I()を使用しても同じです。
例:
@Name(i)
自分自身の名前を返します。@Name(@I())でも同じ結果が得られます。
・第一引数のアドレスリストから、第二引数以降のアドレスリストに含まれるアドレスを削除します。
例:
@Remove(To, @Address(@I()), @Address(from))
Toフィールドのアドレスリストから自分のアドレスとそのメールのFromフィールドのアドレスを削除します。
戻り値としては評価された結果が任意の型で返ります。
・第一引数が真ならば、関数の値は第二引数を評価した値です。
・第一引数が偽ならば、関数の値は第三引数を評価した値です。
・ただし、引数がそれ以上ある場合には、それを評価します。つまり、第一引数が偽ならば、第三引数を評価し、真ならば第四引数の値、偽ならば第五引数の値となり、以下同様です。
例:
@If(@Contain(@Address(to), 'windowsce'), 'WindowsCE関連', 'その他')
そのメールのToフィールドのアドレスに'windowsce'という文字列が含まれていれば'WindowsCE関連'という文字列を、そうでなければ'その他'という文字列を返します。
@If(@Equal(@Folder(@True()) 'Sentbox'), @Sent(), @And(@Seen(), @Not(@Marked())))
そのメールがSentboxにある場合、送信済みメールかどうかを評価し、Sentbox以外にある場合、既読かつマークされていないかどうかを評価します。そしてその評価結果を戻り値として返します。
・第一引数から順番に処理し、最後の引数の値を式の値として返します。
例:
@Progn(@Set('from', @Address(from)),
@Set('to', @Address(to)),
@Concat('From: ', $from, ' ', 'To: ', $to))
・変数$fromにそのメールのFromフィールドのアドレスを代入します。
・変数$toにそのメールのToフィールドのアドレスを代入します。
・From: [$fromの文字列] To: [$toの文字列]という文字列を返します。
と順に処理し、最後に得た文字列をこの関数の戻り値として返します。
・第一引数の条件が偽を返すまで、第二引数を繰り返し評価します。
・式の値は、最後に評価した第一引数の結果を返します。
例:
@while(@Greater($n, 5), @Set('n', @Add($n, 1)))
変数nの値が5より大きくなるまで、変数nに1を加えます。
・第一引数で指定された名前の変数に、第二引数の値を代入します。
・第二引数の値を返します。
・第三引数が真の場合、グローバル変数を設定します。デフォルトは偽です。
例:
@Set('account', @Account(@True()))
accountという変数にサブアカウント名を代入します。
この変数を文字列型として他のマクロで参照する場合は、$accountと記述します。
・第一引数で指定された名前の変数が定義されている場合、その値を返します。この場合、第二引数、第三引数は評価されません。
・定義されていない場合、第二引数を評価し、その値を変数として設定します。そしてその値を返します。
・第三引数が真の場合、グローバル変数を設定します。デフォルトは偽です。
例:
@Variable('account', 'ISP-01'))
accountという変数が定義されていればその値を返します。定義されていない場合、'ISP-01'という値でaccountという変数を定義し'ISP-01'という値を返します。
・マクロを終了します。
・@Exitで終了すると、戻り値は不定になります。
・第一引数で指定されたパスのファイルを読み込みマクロとしてパースし、その結果を返します。
・第一引数で相対パスを指定した場合、現在開いているテンプレートが基準に、振り分けルールや検索時に指定した場合はメールボックスディレクトリが基準になります。
・第一引数をマクロとしてパースし、結果を返します。
・@Include(String)は、@Eval(@Load(String))と同じです。
戻り値としてフィールド値を返します。
・第一引数はフィールド名です。
・第二引数を指定すると、そのパートのフィールドを取得します。
・指定されたフィールドのフィールド型を返します。
例:
@Field('X-Mailer')
そのメールのX-Mailerヘッダの内容を返します。
X-Mailer: QMAIL 2.0.0 / Windows CE 2.11 / SH3 の場合、'QMAIL 2.0.0 / Windows CE 2.11 / SH3'が返ってきます。
・自分自身のアドレスと名前を保持する疑似フィールド値を返します。
・第一引数はアカウント名で、省略するとカレントのアカウントとなります。
・第二引数はIdentity名で、省略するとカレントのIdentityとなります。
例:
@Address(@I())
カレントのアカウントの自分自身のアドレスと名前の疑似フィールドからアドレスを取り出して返します。
@I(@Account(), X-QMAIL-SubAccountIdentity)
カレントのアカウントで、そのメールを受け取ったIdentityの自分自身のアドレスと名前の疑似フィールドを返します。
戻り値として数値を返します。
・プロセスIDを返します。
・第一引数の中で、第二引数の位置を返します。
・第三引数が指定されるとその位置以降をから探します。指定しない場合は最初から探します。
・第四引数が真だと、大文字小文字を区別します。省略時は偽が指定されたものとします。
・見つからなかった場合、4294967295を返します。
例:
@Find(@Account(@True()), '_')
現在のサブアカウント名の中で、'_'の位置を返します。
サブアカウント名が'hogehoge_dialup'ならば8が返り、'hogehoge'ならば4294967295が返ります。
・第一引数と第二引数を足した値を返します。
例:
@Set('n', @Add($n, 1))
変数nに1を加えて変数nにセットします。
・第一引数から第二引数を引いた値を返します。
・数値型はマイナスの値を扱わないので、結果がマイナスになるような演算をするとアンダーフローを起こします。
例:
@Set('n', @Minus($n, 1))
変数nから1を引いて変数nにセットします。
・対象のメッセージのサイズを返します。
・一番目の引数の文字列の長さを返します。
・二番目の引数が偽の時には、Unicode文字列としての長さを返します。
・二番目の引数が真のときには、プラットフォーム固有のMBCS(日本語ならSJIS)に変換した後の長さを返します。
・二番目の引数が省略されると偽になります。
例:
@Length('あいうえお')
5を返します。
@Length('あいうえお', @True())
10を返します。
・第一引数を文字列に変換してメッセージボックスを表示します。
・第二引数はメッセージボックスのタイプです。タイプは以下の組み合わせで実際には十進で指定します。
タイプ | ||
0x0000 | : | OK |
0x0001 | : | OK, Cancel |
0x0002 | : | Abort, Retry, Ignore |
0x0003 | : | Yes, No, Cancel |
0x0004 | : | Yes, No |
0x0005 | : | Retry, Cancel | アイコン |
0x0010 | : | エラーのアイコン |
0x0020 | : | ?のアイコン |
0x0030 | : | !のアイコン |
0x0040 | : | 情報のアイコン | デフォルトボタン |
0x0000 | : | 1番目のボタンがデフォルト |
0x0100 | : | 2番目のボタンがデフォルト |
0x0200 | : | 3番目のボタンがデフォルト |
1 | : | OK |
2 | : | Cancel |
3 | : | Abort |
4 | : | Retry |
5 | : | Ignore |
6 | : | Yes |
7 | : | No |
例:
@MessageBox('処理を実行しますか?', 33)
OK,Cancelタイプのメッセージボックスに?のアイコンとメッセージを表示し、OKが選択された場合1をCancelが選択された場合2を返します。
・第一引数がない場合、現在の日付時間を返します。
・第一引数がある場合、その文字列をパースして得られる日付時間を返します。パースできるのは、Dateヘッダに書かれる形式です。
例:
@Date(Date)
そのメールのDateヘッダの日付時間を返します。
内部的にはGMT+オリジナルのTimeZoneを保持していますが、このまま文字列に変換し表示する場合はローカルタイムに変換されます。
戻り値としてパートを返します。
パートとはメッセージ中の個々のパートコンテンツのことです。
・第二引数のパートの第一引数番目のパートを返します。
・第二引数が省略された時には、対象となるメッセージの第一引数番目のパートを返します。
例:
@Set('work', @Part($n))
対象となるメッセージの$n番目のパートをworkという変数にセットします。
パートが不正な場合($n番目のパートが存在しない場合)はworkには空文字列がセットされます。