1

これから簡単なテキストを翻訳する必要があります

Some title - possibly with dashes inside
---
other text

これに:

<h1>Some title - possibly with dashes inside</h1>
<div>other text</div>

つまり、別の行にある 1 つまたは複数のダッシュによって、タイトルが他のテキストから分離されます。

私はこの文法を作りました:

grammar Foo;
options { output=template; }

text : t+=title? -> lesson(title={$t}) ;

title : PLAIN_TEXT titleSeparator -> title(txt={$PLAIN_TEXT.text});

titleSeparator : NL '-'+ NL ;

PLAIN_TEXT : LETTER+ ;
NL  : '\r'? '\n' ;

fragment LETTER : 'a'..'z' | '-' | ' ';

文法は正しい出力を生成しますが、警告がスローされます: line 2:0 mismatched input '--' expected '-'. ここでこの問題に関する質問を見ましたが、役に立ちませんでした。

私は何かが欠けていると感じていますが、正確に何が得られません。

私が必要としているのは、テキスト内の個別のダッシュと複数のダッシュからなる行を区別する文法です

前もって感謝します

4

0 に答える 0