正規表現の使用時のパフォーマンスに関する考慮事項

正規表現を指定するときには注意が必要です。正規表現の形式によっては、最適な一致を見つけ出すのに大量の作業を要する可能性があり、そのためにパフォーマンスが好ましくない影響を受けることがあるからです。さらに、期待する結果を生じない式もあるかもしれません。

例えば、区切り文字 ';' に至るまで (この文字も含む) のテキストの突き合わせでは、パターン ".*;" を使用しない でください。なぜならこのような突き合わせでは、突き合わせするテキスト中の該当範囲内のすべての ';' 文字を含め、メッセージ内の最後の ';' 文字に至るまで突き合わせが行われるからです。 このような場合、パターン "[^;]*;" を使用してください。

同様に、パターン ".*" の使用も避けてください。これを使用すると、最適の一致の検出のために必ずメッセージの終わりまで強制的に検索が行われるので、パフォーマンスが低下する可能性があるからです。 ただし、メッセージ内の残りのデータをすべて突き合わせたい場合は、パターン ".*" を使用しなければなりません

パフォーマンスを最大化するには、"([0-9]+)*" のような、ネストされた冗長な反復を持つ式を使用しないでください。突き合わせ基準を厳密にすることで、式を単純に保つよう心がけてください。そうすれば、最適な一致を見つけるために何回も検索を実行しなくて済みます。

関連概念
メッセージのモデル化
メッセージ・モデル
TDS 形式: 論理モデルとの関係
関連タスク
メッセージ・モデルの開発
メッセージ定義ファイルの処理
メッセージ・モデル・オブジェクトの処理
関連資料
メッセージ・モデルの参照情報
メッセージ・モデル・オブジェクトのプロパティー
追加の MRM ドメイン情報
追加の TDS 情報
特記事項 | 商標 | ダウンロード | ライブラリー | サポート | フィードバック
Copyright IBM Corporation 1999, 2006 最終更新: 08/21/2006
ad09910_