Pattern

A pattern helps define an acceptable format for data.

Validate data in the field or table column against a specific pattern. While defining the field or column in the Design view, specify a pattern of the data in the selected field.

Specify a pattern for date, number, or text fields based on the different available patterns. Reference the tables below for common examples:

Text

Field Pattern Notes Description
Email ^([a-z0-9_\.-]+)@([\da-z\.-]+)\.([a-z\.]{2,6})$ This regular expression validates emails like john@ado.com. The Email field supports regular expressions.
Phone Number ^(\(?\+?[0-9]*\)?)?[0-9_\- \(\)]*$ This regular expression validates phone numbers like (+64) 38 3235393. The Phone Number field supports regular expressions.
Website ^([a-zA-Z0-9]+(\.[a-zA-Z0-9]+)+.*)$ This regular expression validates websites like www.domain.com. The Website field supports regular expressions.
Number string ^[0-9]{1,45}$ This regular expression validates a string with numbers 0 - 9 and limit length to 45. The Number string field supports regular expressions.
Alpha-numeric ^[A-Za-z0-9_@./#&+-]*$ This regular expression validates a string containing alphanumeric values like INV-001. The Alpha-numeric field supports regular expressions.

Number

Field Pattern Notes Description
Number string ^[0-9]{1,45}$ This regular expression validates a string with numbers 0 - 9 and limit length to 45. The Number string field supports regular expressions.

Auto Correction for date and number fields

This is one of the built-in features of IQ Bot for date and number format types. It performs automatic validation and correction based on the defined pattern , even when the date/number in the scanned document is incorrect.

Note: Auto correction is only supported for special patterns.

The following table illustrates the auto-correction of an incorrect date and numbers by IQ Bot.

Incorrect OCR value Pattern Auto-Correction Description
DATE

12 F3B 2 0 1 5

15 10-2015

dd mmm yyyy

dd-mm-yyyy

12 FEB 2015

15-10-2015

In the first example, IQ Bot auto corrects incorrect OCR "F3B" to "FEB".

In the second example, IQ Bot auto corrects "15 10-2015" to"15-10-2015".

NUMBER

123 4567

12.34,S67.12

9999999

99,99,999.00

1234567

1234567.12

In the first example, the extra space between "3" and "4" is deleted after validation against the pattern.

In the second example, the alphabet "S" is corrected as "5".

Note: English language numeric value with at least one digit to the left and two consecutive digits to the right (for example, 1.23) gets auto corrected if there is a space found between the decimal and the digits. For example, values 1 . 23 or 1. 23 or 1 .23 get auto corrected to 1.23.

To use this feature, add Pattern (in validation options) to the selected date and number format fields.

Special number patterns

A special pattern consists of a Prefix, a Number Pattern, and a Suffix. Use for each is explained as follows:
  • Prefix: Any symbol or a text string that is appended before the Number Pattern.
  • Suffix: Any symbol or a text string that is appended after the Number Pattern.
  • Number Pattern: Number pattern has two parts:

    • Integer-part:

      They are represented by nines (9s).

      The 9s in the integer part represents integer pattern and separators such as commas, spaces, and so on.

    • Fractional part

      They are represented by zeros.

      If you need two fractional number, then it will be represented by two zeros.

      Specifying fractional part is optional.

      Format of numbers defined for validating numeric data.

      IQ Bot supports prefixes and suffixes to make processing and validation of data easier. Specifying a suffix and prefix in the pattern and in the numeric fields is optional. Even if you do not specify the suffix or prefix, IQ Bot auto corrects and includes the required currency symbols and units of measure for the numeric fields as prefix or suffix. If you specify the currency symbols and units of measurements in the pattern and in the numeric data, IQ Bot deletes the currency symbol and unit of measure from the data.

      Note: IQ Bot automatically recognizes these currency symbols: $, ¥, £, ₹, €, Rs, USD, EUR, CAD, AUD, GBP, and INR. We recommend specifying valid currency symbols in the data.

IQ Bot supports prefixes and suffixes to make processing and validation of data easier. Specifying a suffix and prefix in the pattern and in the numeric fields is optional. Even if you do not specify the suffix or prefix, IQ Bot auto corrects and includes the required currency symbols and units of measure for the numeric fields as prefix or suffix. If you specify the currency symbols and units of measurements in the pattern and in the numeric data, IQ Bot deletes the currency symbol and unit of measure from the data.

Note: IQ Bot automatically recognizes these currency symbols: $, ¥, £, ₹, €, Rs, USD, EUR, CAD, AUD, GBP, and INR. We recommend specifying valid currency symbols in the data.

Examples of special number patterns

Pattern Example
Supported patterns

Supported format for numeric patterns:

  • Decimal (India)
  • Decimal (US, UK, Australia and others)
  • Number (India)
  • Number (US, UK, Australia and others)
  • Normal Decimal
  • Normal Number
9,999,999.00 2,597.23
9.999.999,00 7.562.597,23
9 999 999.00 2 597.23
9 999 999,00 7 562 597,23
9999999,00 2597,23
9999999.00 7562597.23
99,99,999.00 75,26,569.56
$ 9.999.999,00 $ 7.562.597,23
$9 999 999.00 $7 562 597.23
9 999 999,00 $ 2 597,23 $
€ 9999999,00 € 7562597,23
€9999999.00 €7562597.23
99,99,999.00 € 75,62,597.23€
EUR 9,999,999.00 EUR 7,562,597.23
EUR9 999 999.00 EUR7 562 597.23
9999999,00 EUR 62597,23 EUR
9.999.999.00 62.986.51
9, 999, 999. 00 232, 510. 68

Special date patterns

Supported date separators include /(forward slash), –(dash), space, .(dot), and ,(comma).

  • d - Numeric day of the month, from 1 through 31 (eg. 5, 15 etc.)
  • dd - Numeric day of the month, from 01 through 31 (eg. 05, 15 etc.)
  • m - Numeric month (eg. 1 for January)
  • mm - Numeric month (eg. 01 for January)
  • mmm - First 3 letters of the month (eg. NOV for November)
  • mmmm - Full name of the month (eg. June)

Examples of special date patterns

Pattern Example
mm-dd-yy 01-31-18
mmm-dd-yyyy Jan-31-2018
mmmm dd, yyyy January 31, 2018
Mmmm d, yyyy January 9, 2018
D M YY 9 5 15
D MM YY 9 11 15
D MMM YY 7 MAR 15
D MMMM YY 7 MARCH 15
M DD YYYY 5 05 2018
D/MM/YY 5/05/18
M/D/YY 9/5/15
DD / M / YYYY 05 / 9 / 2018
MMM / DD / YY MAR / 05 / 18
D-MMMM-YY 09-APRIL-18
M-D-YY 5-5-18
MM-D-YY 11-5-18
MMM-DD-YYYY NOV-13-2018
DD - M - YYYY 13 - 5 – 2019
MMMM - DD - YY OCTOBER - 05 – 18
D.MMMM.YYYY 05.APRIL.2018
MMMM.DD.YYYY APRIL.05.2018
D . M . YY 5 . 5 . 18
D . MM . YY 5 . 05 . 18
DD . MMM . YY 05 . JUL . 18
M . DD . YYYY 5 . 11 . 2018
MMMM . DD . YY MAY . 13 . 13
YYYY-MM-DD 2018-01-27
YYYY/MM/DD 2017/07/27