texml ヘルプ
パーサーの動作
概要

パーサーの動作を説明します



パーサーの開始、終了

パーサーはStartノードから開始します。Endノードまで達すると正常終了になります。



リンクの処理

パーサーは現在のノードから移動するためにリンクをたどります。リンクには移動条件が設定されていて、その条件が満たされるとリンク先のノードに移動します。リンクの条件チェックは設定されている優先順位の順番でチェックされます。リンク先がなくなるとパーサーエラーになります。



ノードの処理

ノード移動するとノードに割り当てられているコマンドを実行します。



リンク条件
リンク条件を通過した場合、マッチした文字数分だけ入力テキストのシーケンスを進めます。このときマッチした文字列は内部のテキストバッファに保存されます。テキストバッファはノードに割り当てられているコマンドが処理します。

正規表現
設定されている正規表現にマッチする場合通過します。

関数
別に定義されているノードを実行して、正常終了する場合通過します。


ノードコマンド
ノードに達した場合、ノードに割り当てられているコマンドを実行します

Start
開始ノード。何もしません。

End
終了ノード。このノードに達した場合、パーサーは正常終了します。

None
なしもしません。

ClearText
リンクを通過したときに保存されたテキストバッファをクリアします。

PushTag
XMLにタグを挿入します。同時にカレントタグを挿入したタグに設定します。

PopTag
カレントタグを親のタグに設定します。

SetAttr
カレントタグに属性を追加します。

SetAttrText
カレントタグに属性を追加します。ただし属性の値はテキストバッファの文字列を使います。

SetText
カレントタグにテキストを追加します。ただしテキストはテキストバッファの文字列を使います。

Copyright(C) 2008 fanzo. 更新日 20081210