MessagePattern クラス
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
ICU MessageFormat パターンを解析して表します。
[Android.Runtime.Register("android/icu/text/MessagePattern", ApiSince=24, DoNotGenerateAcw=true)]
public sealed class MessagePattern : Java.Lang.Object, Android.Icu.Util.IFreezable, IDisposable, Java.Interop.IJavaPeerable
[<Android.Runtime.Register("android/icu/text/MessagePattern", ApiSince=24, DoNotGenerateAcw=true)>]
type MessagePattern = class
inherit Object
interface IFreezable
interface ICloneable
interface IJavaObject
interface IDisposable
interface IJavaPeerable
- 継承
- 属性
- 実装
注釈
ICU MessageFormat パターンを解析して表します。 ChoiceFormat、PluralFormat、SelectFormat のパターンも処理します。 これらのクラスの実装や、メッセージの検証、翻訳、および形式変換用のツールで使用されます。
パーサーは、メッセージ引数の識別に関連するすべての構文を処理します。 これには、スタイル文字列に入れ子になった MessageFormat パターンの部分文字列が含まれる "複合" 引数が含まれます。 "simple" 引数 (入れ子になった MessageFormat パターン部分文字列を含まない) の場合、引数スタイルはそれ以上解析されません。
パーサーは名前付きメッセージ引数と番号付きメッセージ引数を処理し、両方を 1 つのメッセージで許可します。
パターンが正常に解析されたら、countParts()、getPart() および関連メソッドを使用して解析されたデータを反復処理します。
データは論理的には解析ツリーを表しますが、高速で簡単な解析を行い、オブジェクトの割り当てを最小限に抑えるために、"パーツ" の一覧として格納およびアクセスされます。 引数と入れ子になったメッセージは、再帰によって最適に処理されます。 "part" _STARTごとに、 #getLimitPartIndex(int) は対応する_LIMIT "part" のインデックスを効率的に返します。
"parts" の一覧:
message = MSG_START (SKIP_SYNTAX | INSERT_CHAR | REPLACE_NUMBER | argument)* MSG_LIMIT
argument = noneArg | simpleArg | complexArg
complexArg = choiceArg | pluralArg | selectArg
noneArg = ARG_START.NONE (ARG_NAME | ARG_NUMBER) ARG_LIMIT.NONE
simpleArg = ARG_START.SIMPLE (ARG_NAME | ARG_NUMBER) ARG_TYPE [ARG_STYLE] ARG_LIMIT.SIMPLE
choiceArg = ARG_START.CHOICE (ARG_NAME | ARG_NUMBER) choiceStyle ARG_LIMIT.CHOICE
pluralArg = ARG_START.PLURAL (ARG_NAME | ARG_NUMBER) pluralStyle ARG_LIMIT.PLURAL
selectArg = ARG_START.SELECT (ARG_NAME | ARG_NUMBER) selectStyle ARG_LIMIT.SELECT
choiceStyle = ((ARG_INT | ARG_DOUBLE) ARG_SELECTOR message)+
pluralStyle = [ARG_INT | ARG_DOUBLE] (ARG_SELECTOR [ARG_INT | ARG_DOUBLE] message)+
selectStyle = (ARG_SELECTOR message)+
<ul><li>Literal 出力テキストは "parts" で直接表されるのではなく、ある部分の getLimit() から次のパートの getIndex() まで、メッセージの一部間でアクセスされます。
<li>ARG_START.CHOICE は ArgType CHOICE を持つARG_START パーツを表します。
このクラスはパブリック サブクラス化を目的としていません。
このページの一部は、によって作成および共有され、に記載されている条件に従って使用される作業に基づく変更です。
コンストラクター
| 名前 | 説明 |
|---|---|
| MessagePattern() |
既定の ApostropheMode を使用して空の MessagePattern を構築します。 |
| MessagePattern(MessagePattern+ApostropheMode) |
ICU MessageFormat パターンを解析して表します。 |
| MessagePattern(String) |
既定の ApostropheMode を使用して MessagePattern を構築し、MessageFormat パターン文字列を解析します。 |
フィールド
| 名前 | 説明 |
|---|---|
| ArgNameNotNumber |
文字列が有効な "パターン識別子" であり、数値ではない場合の |
| ArgNameNotValid |
文字列が無効な場合の |
| NoNumericValue |
パーツに数値が定義されていない場合に getNumericValue(Part) によって返される特殊な値。 |
プロパティ
| 名前 | 説明 |
|---|---|
| Class |
この |
| Handle |
基になる Android インスタンスへのハンドル。 (継承元 Object) |
| HasNamedArguments |
解析されたパターンには{first_name}のような名前付き引数がありますか? |
| HasNumberedArguments |
解析されたパターンには、 {2}のような番号付き引数がありますか? |
| IsFrozen |
このオブジェクトが固定されている (変更できない) かどうかを判断します。 |
| JniIdentityHashCode |
ICU MessageFormat パターンを解析して表します。 (継承元 Object) |
| JniPeerMembers |
ICU MessageFormat パターンを解析して表します。 |
| PatternString |
ICU MessageFormat パターンを解析して表します。 |
| PeerReference |
ICU MessageFormat パターンを解析して表します。 (継承元 Object) |
| ThresholdClass |
この API は Android 用 Mono インフラストラクチャをサポートしており、コードから直接使用するためのものではありません。 (継承元 Object) |
| ThresholdType |
この API は Android 用 Mono インフラストラクチャをサポートしており、コードから直接使用するためのものではありません。 (継承元 Object) |
メソッド
| 名前 | 説明 |
|---|---|
| AutoQuoteApostropheDeep() |
解析されたパターン文字列のバージョンを返します。各 ASCII アポストロフィがまだない場合、および引用符構文として解釈されない場合は、ASCII アポストロフィが 2 倍 (エスケープ) されます。 |
| Clear() |
この MessagePattern をクリアします。 |
| ClearPatternAndSetApostropheMode(MessagePattern+ApostropheMode) |
ICU MessageFormat パターンを解析して表します。 |
| Clone() |
このオブジェクトのコピーを作成して返します。 |
| CloneAsThawed() |
このオブジェクトのfrozenコピーを作成して返します。 |
| CountParts() |
パターン文字列を解析して作成された "parts" の数を返します。 |
| Dispose() |
ICU MessageFormat パターンを解析して表します。 (継承元 Object) |
| Dispose(Boolean) |
ICU MessageFormat パターンを解析して表します。 (継承元 Object) |
| Equals(Object) |
他のオブジェクトがこのオブジェクトと "等しい" かどうかを示します。 (継承元 Object) |
| Freeze() |
このオブジェクトを固定し、不変でスレッド セーフにします。 |
| GetApostropheMode() |
ICU MessageFormat パターンを解析して表します。 |
| GetHashCode() |
オブジェクトのハッシュ コード値を返します。 (継承元 Object) |
| GetLimitPartIndex(Int32) |
ARG| のインデックスを返します。ARGに対応するMSG_LIMITパーツ|開始時にMSG_STARTします。 |
| GetNumericValue(MessagePattern+Part) |
ICU MessageFormat パターンを解析して表します。 |
| GetPart(Int32) |
ICU MessageFormat パターンを解析して表します。 |
| GetPartType(Int32) |
ICU MessageFormat パターンを解析して表します。 |
| GetPatternIndex(Int32) |
指定したパターン "part" のパターン インデックスを返します。 |
| GetPluralOffset(Int32) |
PluralFormat 引数の "offset:" 値を返します。指定しない場合は 0 を返します。 |
| GetSubstring(MessagePattern+Part) |
ICU MessageFormat パターンを解析して表します。 |
| JavaFinalize() |
オブジェクトへの参照がなくなったとガベージ コレクションによって判断されたときに、オブジェクトのガベージ コレクターによって呼び出されます。 (継承元 Object) |
| Notify() |
このオブジェクトのモニターで待機している 1 つのスレッドを起動します。 (継承元 Object) |
| NotifyAll() |
このオブジェクトのモニターで待機しているすべてのスレッドを起動します。 (継承元 Object) |
| Parse(String) |
MessageFormat パターン文字列を解析します。 |
| ParseChoiceStyle(String) |
ChoiceFormat パターン文字列を解析します。 |
| ParsePluralStyle(String) |
PluralFormat パターン文字列を解析します。 |
| ParseSelectStyle(String) |
SelectFormat パターン文字列を解析します。 |
| PartSubstringMatches(MessagePattern+Part, String) |
ICU MessageFormat パターンを解析して表します。 |
| SetHandle(IntPtr, JniHandleOwnership) |
Handle プロパティを設定します。 (継承元 Object) |
| ToArray<T>() |
ICU MessageFormat パターンを解析して表します。 (継承元 Object) |
| ToString() |
オブジェクトの文字列形式を返します。 (継承元 Object) |
| UnregisterFromRuntime() |
ICU MessageFormat パターンを解析して表します。 (継承元 Object) |
| ValidateArgumentName(String) |
引数の名前または引数番号の文字列を検証して解析します。 |
| Wait() |
現在のスレッドが起動するまで待機します。通常は、 <em>notified</em> または <em>interrupted</em>。 (継承元 Object) |
| Wait(Int64, Int32) |
現在のスレッドは、通常、 <em>notified</em> または <em>interrupted</em>、または一定のリアルタイムが経過するまで、起動されるまで待機します。 (継承元 Object) |
| Wait(Int64) |
現在のスレッドは、通常、 <em>notified</em> または <em>interrupted</em>、または一定のリアルタイムが経過するまで、起動されるまで待機します。 (継承元 Object) |
明示的なインターフェイスの実装
| 名前 | 説明 |
|---|---|
| IFreezable.CloneAsThawed() |
ICU MessageFormat パターンを解析して表します。 |
| IFreezable.Freeze() |
ICU MessageFormat パターンを解析して表します。 |
| IJavaPeerable.Disposed() |
ICU MessageFormat パターンを解析して表します。 (継承元 Object) |
| IJavaPeerable.DisposeUnlessReferenced() |
ICU MessageFormat パターンを解析して表します。 (継承元 Object) |
| IJavaPeerable.Finalized() |
ICU MessageFormat パターンを解析して表します。 (継承元 Object) |
| IJavaPeerable.JniManagedPeerState |
ICU MessageFormat パターンを解析して表します。 (継承元 Object) |
| IJavaPeerable.SetJniIdentityHashCode(Int32) |
ICU MessageFormat パターンを解析して表します。 (継承元 Object) |
| IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates) |
ICU MessageFormat パターンを解析して表します。 (継承元 Object) |
| IJavaPeerable.SetPeerReference(JniObjectReference) |
ICU MessageFormat パターンを解析して表します。 (継承元 Object) |
拡張メソッド
| 名前 | 説明 |
|---|---|
| GetJniTypeName(IJavaPeerable) |
インスタンス |
| JavaAs<TResult>(IJavaPeerable) |
|
| JavaCast<TResult>(IJavaObject) |
Android ランタイムチェック型変換を実行します。 |
| JavaCast<TResult>(IJavaObject) |
ICU MessageFormat パターンを解析して表します。 |
| TryJavaCast<TResult>(IJavaPeerable, TResult) |
|