2023:Pattern Match (Value Extractor)

From Grooper Wiki
Revision as of 17:42, 25 January 2023 by Dsmith (talk | contribs) (→‎How To)
WIP

This article is a work-in-progress or created as a placeholder for testing purposes. This article is subject to change and/or expansion. It may be incomplete, inaccurate, or stop abruptly.

This tag will be removed upon draft completion.

Pattern Match is an Extractor Type found in Grooper. This extractor primarily uses regular expression (regex) for general data extraction.

About

Pattern Match is one of the most commonly used extractors for general data. As per its name, it extracts data from a document matching a regex pattern entered into the Value Pattern.

This extractor is useful when you want to extract text data matching a particular pattern across a document, such as dates or social security numbers. For example, the format MM/DD/YYYY can be matched with the regex pattern: \d{2}/\d{2}/\d{4}.

For more information on regex, click the following link: RegexOne

How To

Pattern Match can be configured on both Data Type and Value Reader objects.

Configuring by Object Type

Configuring on a Value Reader

  1. Create your Value Reader.
    1. Note the three tabs, "Value Reader", "Tester", and "Advanced".
  2. Select the "Value Reader" tab.
  3. Select the icon on the far right on the far right of the Extractor property.

  1. On the drop-down menu, select Pattern Match.

  1. Click the "Tester" tab.
  2. In the "Value Pattern" box, enter the text, or regex pattern of the text you wish to extract.
    1. Matched data will be highlighted in green.

Configuring on a Data Type

The Data Type is a little more involved when picking out Pattern Match.

  1. To select the extractor, create your Data Type.
  2. Select the icon to the far right of Local Extractor.

  1. Select Pattern Match from the dropdown menu.
  2. Select the ellipses to the far right of the Local Extractor.

This will bring up the Extractor Editor window

  1. Enter a pattern for the text you would like to extract.
  2. Once you've entered your pattern, and are satisfied with the results, click "OK".

Extracting Data

Dates

  1. Take note of the format of the date(s) on the document.
    1. This document has a date formatted MM/DD/YYY
  2. Enter the regex pattern to extract the date.
  3. For this document, the regex pattern will be \d{2}/\d{2}/\d{4}
    1. For the MM/DD/YY format, the pattern will instead be \d{2}/\d{2}/\d{2}. For MM-DD-YY/MM-DD-YYY formats, simply substitute the backslashes (/) with hyphens (-).

Currency

For this example, the pattern provided will match all currency data listed.

  1. Note the amount listed, as well as any cent amounts and dollar signs being given.
  2. If dollar signs are given, code them out by placing them in between square braces: [$].
    1. $ by itself represents the end of a string in regex.
  3. When writing the pattern for currencies, look for the largest and smallest amounts provided, as this will determine the range for the placeholders.
  4. To extract the first three data instances, enter the following pattern: [$]\d{1,3}[.]\d{2}
  5. To extract all data instances, you will need to account for the thousandths, ten-thousandths, and hundred-thousandths place; thus, the pattern will be the same as it was for the tens/hundreds/thousandths place: \d{1,3}
  6. Your regex pattern should look like this: [$]\d{1,3},\d{1,3}[.]\d{2}
    1. Note that while the last three pieces of date are matched, the first three are no longer being picked up.
  7. Finally, to return all data, add parenthesis around \d{1,3}, and follow with a question mark: [$](\d{1,3},)?\d{1,3}[.]\d{2}

Social Security Numbers (SSN)/Employer Identification Numbers (EIN)

  1. Note the format of the SSN/EIN
    1. SSNs will be ###-##-####, EINs are ##-#######
  2. Enter the pattern that will match the data you wish to extract.
  3. SSNs will be \d{3}[-]\d{2}[-]\d{4}; EINs will be \d{2}[-]\d{7}.

Prefix and Suffix Patterns

Prefix and Suffix Patterns act as anchors to which you can tether the data you wish to extract. As one would expect, a Prefix Pattern matches what comes before your chosen matched data, Suffix Patterns are concerned with what comes after. For patterns that consist of more than one regular expression (\n\t, for example), encase the pattern in square braces. [].

For example, let's say that you want to extract data on its own line, like the title of a section. While you can enter just the title, you might get false positives if the word(s) that make up the title are used anywhere else on the document. Thus, your prefix and suffix patterns will be:

Prefix Pattern:[\n\t]

Suffix Pattern:[\r\t]

See Also: