2017-11-09 5 views
1

をマーキングすることは、私の入力されている間、マークを外すには、以前に注釈をマーク:ここここに関連する1つ

person 
the private person 

は私のルールはどのように私は「民間人」マークされていない(ただし、マークPrivatePersonを残すにPersonを作ることができます

DECLARE Person; 
DECLARE PrivatePerson; 

ANY{REGEXP("person") -> MARK(Person)}; 

ANY{AFTER(Person), REGEXP("private") -> MARK(PrivatePerson), UNMARK(Person)}; 

です)?

UNMARK(Person)は、それがすべてで可能です

動作しませんか?

答えて

2

私は、次のスーツにどうかを知りませんが、それは動作します:

W{REGEXP("private")} Person {->UNMARK(Person),MARK(PrivatePerson,1,2)}; 

注釈スパンがあまりにもプライベートを含むように、私は1,2を置きます。

お客様の状況に応じて、の前にを入力してください。の後にを入力してください。これで注釈が作成されますPrivatePerson。ただし、ルールがマッチしたものにのみ適用されるため、マークが解除されることはありません。あなたのルールでマッチしているのは、文字列 "private"です。 BEFORE(Person)は単なる条件なので、特定の機会にUNMARK(Person)ルールは何もしません。また

ドキュメントと私は1つのインスタンスで終わるのに対し、がANY、すべてのトークンに行く(私のためにそれがRutaBasicとSWの両方である)と重複する注釈を作成するので、ドキュメント代わりのANYを好みますそれぞれの。私はあなたが同じ行動を経験するかどうかは分かりません。

関連する問題