tMultiPatternCheck
Checks all existing data in multiple columns against a given Java regular
expression.
tMultiPatternCheck can give two output flows:
Matching Data and Non-Matching Data. The first
collects all data that match a given pattern, and the second collects all data that do not
match the pattern. You can then implement any required corrections.
tMultiPatternCheck Standard properties
These properties are used to configure tMultiPatternCheck running in the Standard Job framework.
The Standard
tMultiPatternCheck component belongs to the Data Quality family.
This component is available in Talend Data Management Platform, Talend Big Data Platform, Talend Real Time Big Data Platform, Talend Data Services Platform, Talend MDM Platform and Talend Data Fabric.
Basic settings
Schema and Edit schema |
A schema is a row description, it defines the number of fields to be processed and |
 |
Built-in: You create the schema and store it |
 |
Repository: You have already created the schema |
Logical operator used to combine check conditions |
In the case you want to combine the conditions you set on columns, select from |
Columns To Check |
Set a regular expression for each of the analyzed columns.
|
Advanced settings
tStatCatcher |
Select this check box to collect log data at the component level. |
Global Variables
Global Variables |
NB_LINE: the number of rows read by an input component or
NB_LINE_OK: the number of rows matching a given pattern.
NB_LINE_REJECT: the number of rows not matching a given
ERROR_MESSAGE: the error message generated by the A Flow variable functions during the execution of a component while an After variable To fill up a field or expression with a variable, press Ctrl + For further information about variables, see |
Usage
Usage rule |
This component is usually used as an intermediate component, and it requires an |
Limitation |
When exporting a Job using When importing a Job using tMultiPatternCheck with a For more information about importing Jobs with |
Checking the data in multiple columns against patterns
This scenario applies only to Talend Data Management Platform, Talend Big Data Platform, Talend Real Time Big Data Platform, Talend Data Services Platform, Talend MDM Platform and Talend Data Fabric.
This scenario describes a four-component Job that checks customers’ last and first names
and email against the relevant patterns. It lists data that matches the selected patterns and
data that does not.
The check results are written in two output files: the first for the values
that match the selected patterns and the second for the values that do not match the selected
patterns. Rejected data has a message to tell what pattern was not validated.
Setting up the Job
In this scenario, you have already stored the main input schema in the
Repository. For more information about storing schema metadata in the Repository, see
Talend Studio User Guide.
The main input table contains three columns: lname, fname and email. You want to check
the entries in these columns against patterns.
-
In the Repository tree
view, expand Metadata > DB Connections where you have stored the main input schema and drop the relevant
file onto the design workspace. -
From the Components dialog box, select the
tMysqlInput component and click
OK to drop it onto the workspace.The input table used in this scenario is called
customer. It holds several columns including the
three columns against which we want to do a pattern check. - Drop the following components from the Palette onto the design workspace: tMultiPatternCheck and two tLogRow.
- Connect the main input component to tMultiPatternCheck using a Row > Main connection.
-
Connect tMultiPatternCheck to the two tLogRow components using the Matches and Non Matches
connections.

Configuring the components
-
Double-click tMultiPatternCheck to display its Basic settings view and define its properties.
-
Click Edit schema to
open a dialog box. Here you can define the data you want to pass to the output
components, and then click OK to close
the dialog box.In this example you pass to the tMultiPatternCheck
component all the main input columns. -
Click in the Property column and select
REPOSITORY from the list.In this example, you want to retrieve patterns from the DQ
Repository of Talend Studio. -
Click in the Pattern
Selection column and select from the Pattern
Selector the patterns against which you want to check the data in
the columns.In this example, you want to check if customer first and last names start
with upper case and if emails are valid addresses. -
Select from the Pattern Selector the
Starts with uppercase pattern for the first and last
names and the Email Address for the customer email. -
In the Is Case Sensitive
column, select the check boxes next to the column name where you want to
consider, when doing the pattern check, the lower and upper cases. -
In the Check column,
select the check boxes next to the column names you want to check against the
defined patterns, all columns in this example. -
Leave the Message column
empty if you want to have the automatic message about what pattern is not
validated. Otherwise, set your own message. -
Configure the output components:
-
Double-click the first tLogRow component to
display its Basic settings view and define its
properties. -
In the Mode area, select the
Table option to print results in a
table. -
Do the same for the second tLogRow
component.
-
Double-click the first tLogRow component to
Executing the Job
Two output tables are written on the console. The first table lists the data entries
in the three defined columns that match the selected patterns. The second table
lists non match entries in the three columns according to the used patterns.
The REGEX_INVALIDITY_MESSAGE column in the second table provides the name of the
patterns that were not validated and because of which the rows were rejected.
The figure below illustrates extractions of the two output tables: