NatTableフィルタで正規表現を使用することに興味があります。私は、以下の便利なリンクに基づいて私のコードを設定している:NatTable Regexを使用したフィルタ
https://www.eclipse.org/forums/index.php/t/1069806/
を私が集めることができるものから、それは基本的に既存のフィルターに次のコードを追加することに沸く:
FilterRowHeaderComposite<T> filterRowHeaderLayer = new
FilterRowHeaderComposite<>(filterStrategy,
sortHeaderLayer, columnHeaderDataLayer.
getDataProvider(), configRegistry);
int rowNum = 2;
configRegistry.registerConfigAttribute(EditConfigAttributes.CELL_EDITOR,
new FilterRowTextCellEditor(), DisplayMode.NORMAL,
FilterRowDataLayer.FILTER_ROW_COLUMN_LABEL_PREFIX + rowNum);
configRegistry.registerConfigAttribute(FilterRowConfigAttributes.
TEXT_MATCHING_MODE, TextMatchingMode.REGULAR_EXPRESSION,
DisplayMode.NORMAL,
FilterRowDataLayer.FILTER_ROW_COLUMN_LABEL_PREFIX + rowNum);
configRegistry.registerConfigAttribute(CellConfigAttributes.
DISPLAY_CONVERTER, new FilterRowRegularExpressionConverter(),
DisplayMode.NORMAL,
FilterRowDataLayer.FILTER_ROW_COLUMN_LABEL_PREFIX + rowNum);
フィルタリングは、特定の状況で動作するように見えますが、他の状況では機能しないようです。たとえば、「This is a Test」というデータを持つセルがあるとします。 * t式を使うと、行(これは私が期待しているもの)を見つけることになります。 * x式を使用すると、行が見つかりません(これは私が期待しているものです)。 ^(123)という式を使用すると、行が見つかりません(これは私が期待しているものではありません)。間違っていることをしていますか?
ありがとうございます!