0

現在、AntLR を使用して、独自の言語でいくつかのファイルを解析しています。エディターでそのセクションを強調表示する必要があります (たとえば、Java クラスのメソッドを強調表示することを考えてください)。

誰もそれらを取得する方法についてのヒントを持っていますか? このコードがあるとします:

function test(param1, param2) {
}

関数はキーワードであるため、パーサーで取得する最初の位置は識別子「test」の位置です。そこから最後の中括弧までの位置を取得するにはどうすればよいですか? 当然のことながら、パラメーター リストは動的であるため、事前にその長さを知ることはできません。

ありがとうございました!

4

2 に答える 2

0

あなたが得ている最初の位置がテストの位置である理由を完全には理解していません。パターン仕様を正しく設計していれば、「関数」トークンの文字オフセットを簡単に取得できるはずです。仕様の関連部分を挙げていただけますか?

于 2008-11-11T17:29:09.590 に答える