1

次のサンプル テキストがあります。

zip 20193 米国
ニューヨーク

私がやりたいのは、「ニューヨーク」、つまり郵便番号の後の行のみに一致することです。

このコードを使用してみましたが、機能しません -

見出しを宣言します。ピン BREAK #{-> MARK(見出し)} BREAK;

(この前にピンを宣言しました)。

これについてどうすればよいか教えてください。

ありがとう!

4

1 に答える 1

0

問題はおそらくフィルタリング設定です。BREAK はデフォルトでは表示されません。ruta は自動的に改行をスキップするため、マッチングが成功することはありません。

ルールの前にフィルタリング設定を変更する別のルールを追加してみてください。

RETAINTYPE(BREAK);
pin BREAK #{-> MARK(heading)} BREAK;

BREAK は \n と \r を表すため、別の問題が発生する可能性があります。したがって、ルールは Windows の行末では機能しません。次のようなものが必要です。

pin BREAK[1,2] #{-> MARK(heading)} BREAK;

ruta には、行に注釈を付けるための utils 分析エンジンがあります。 PlainTextAnnotator を含めると、次のように記述できます。

pin Line{-> heading};

(たとえば、行が空白で開始または終了する場合は TRIM アクションを使用して、行をトリミングする必要があるかもしれません)

免責事項: 私は UIMA Ruta の開発者です

于 2016-02-28T15:55:31.333 に答える