## Scanner

Successive Scanner statements can be used to analyze pretty much any kind of data. The function operates on the data in a field or a named variable.

You can choose to ignore spaces and newline characters at the start of the field being scanned.

Each of the supported scanning functions return true on success or false on failure. On success the specified results variable will contain the result of the successful match. The specified remainder variable will contain all text after the scanned item. On failure, the results variable will be empty and the remainder variable will be the same as the field value.

When executing stepwise the result of the scan is only true if each track's scan returned true. The result can optionally be negated via the Not option. You can specify that the result of the scan be copied to the action test state (Set, Anded or Ored into the existing value).

When operating on named variables the statement is only executed once, regardless of the current execution mode. When the source is a named variable the result and remainder fields must also be named variables.

The following scanning functions are available:

Scan Integer
  Attempt to scan a positive or negative integer value. Note that on success the results variable may not exactly match the data as scanned. This is due to the fact that the integer is extracted as a binary value and is converted back to a string value. For example 0123 will be returned as 123.
Scan Number
  Attempt to scan a number which optionally contains a fractional component. Note that on success the results variable may not exactly match the data as scanned. This is due to the fact that the number is extracted as a binary value and is converted back to a string value. For example 123 will be returned as 123.0.
Scan String
  Attempt to scan a string specified in the qualifier field. The qualifier field may use any of the escape sequences described in Escape Sequences. You can specify that the match attempt is to be case insensitive.
Scan up to String
  Scan all characters up to a specified string specified in the qualifier field. On success at least one character will have been scanned. Note that leading spaces and/or newline characters which are being ignored do not take place in the match attempt. The qualifier field may use any of the escape sequences described in Escape Sequences. You can specify that the match attempt is to be case insensitive.
Scan Characters in String
  Scan all characters which are specified in the qualifying string. On success at least one character will have been scanned. The qualifier field may use any of the escape sequences described in Escape Sequences. You can specify that the match attempt is to be case insensitive.
Scan up to Characters in String
  Scan all characters which are not specified in the qualifying string. On success at least one character will have been scanned. The qualifier field may use any of the escape sequences described in Escape Sequences. You can specify that the match attempt is to be case insensitive.

Information on alternate means of parsing or scanning

File to Tag From Content

Find and Remove

Regular Expression

Replace

List Statements