On this page
Error
Condition :: REGEX Syntax Error Messages
正規表現の構文エラーを表示
ASTER::CONDITION::REGEX
::Syntax Error
送信された正規表現に構文エラー (REGEX Syntax Error) が含まれていた場合、パターン構文の解析に失敗し例外 (エラー) が発生します。エラー発生時の動作は開発者が選択的でき、メッセージウィンドウの表示か「即時実行条件」としてイベントを検出する、二種類あります。
このページではエラー発生時の動作をカスタムするためのコンディション ( Event Detection ) について解説しています。
Event Detection とは
プロパティからの設定以外に「即時実行コンディション」でエラー発生をイベントとしてキャッチできる機能が「イベント検出 ( Event Detection )」です。
Event Detection は ASTER ベータ版には実装が無い新機能です。
構文エラーが発生した時点で即時実行されるコンディションはイベント ID を使って各イベント固有のアクションを簡単に設定できる仕組みになっています。
イベント ID の設定でイベントは識別化が可能になります。複数の REGEX 構文を処理した場合などイベントが 1 フレームで順次・複数発生する状況では是非イベント ID を活用してください。
flowchart LR A(REGEX.1) --> B[Event ID.1] C(REGEX.2) --> D[Event ID.2] B --> |Error|E{Error Condition} D --> |Error|E E --> F[Error Event ID == 1] E --> G[Error Event ID == 2] style A fill:#f9f,stroke:#333,stroke-width:4px style B fill:#f9f,stroke:#333,stroke-width:4px style E fill:#7FFAFE,stroke:#333,stroke-width:4px style F fill:#f9f,stroke:#333,stroke-width:4px
REGEX Syntax Error の Event ID 対応命令は
Match
Search
Replace
です。注意点 1
理論だけで実際に試してませんが、エラーを発生させ Event Detection でイベントをキャッチ、そのタイミングでまたエラーを発生させるアクションの実行とエラー発生、Event Detection でイベントをキャッチ、この繰り返しで無限ループになるはずです。
Event Detection 機能は構造上、開発者の意図しない無限ループを作る可能性があります。
関連
ASTER は正規表現に構文エラーが発生した場合の動作として、エクステンションのプロパティ設定からアプリケーション実行中にエラーメッセージ表示・非表示選択ができます。
フレームエディタ
::プロパティ設定