Regex Lookup Filter Joiner

Iterates the Lookup table on the lower port and attempts a regex match using a regex pattern on the lookup table with a column on the Source data table on the Upper input port.

The resultant table is the original data source enriched with with the lookup table where matches are found

If multiple lookup matches are found, all are returned.

This loop component would be better for large data sets as it iterates the lookup table once and uses a filter on the data source rather than a straight cross join. This should make it less memory intensive than a standard cross join solution.

It also does not require the loading of data into an H2 database and so makes it compatible with tables that contain data elements unsupported by H2, and also does not require the data table to be loaded into H2 tables.


@takbb Brian Bates 13 November 2022

Options

Include Left unmatched rows
Tick this to include the rows from the Left (upper) input table that do not match with the Right (lower) input table.%%00010(Left Outer Join)
Columns to return from Source table on TOP/LEFT data port
Select the columns to be returned from the table on the TOP (LEFT) data port
Columns to return from Lookup/Enrichment table on BOTTOM/RIGHT data port
Select the columns to be returned from the table on the BOTTOM (RIGHT) data port
Name of Lookup column containing a regex pattern
Choose the column from the BOTTOM port data table that contains the regular expression to be compared with the source column
Column from TOP input table to be compared
Choose the column that is to be matched to the range

Input Ports

Icon
Data source containing a column to be mateched against the required Regex column.
Icon
Lookup table containing regex patterns to be matched against

Output Ports

Icon
The data source enriched with selected columns of matching lookup table rows. It also contains the rowid of the original data source with which the match was made, in case multiple matches occured for a given data source item

Nodes

Extensions

Links