Regular Expressions
The regular expressions used by SELECTOR are derived from the notation used in automata theory to describe formal languages and finite state machines.
Regular expressions consist of characters: operands such as "a", "O", and ", " and meta-characters (operators) such as "+", "|", and "[". A regular expression, which is similar to the familiar arithmetic expressions, can be either a basic expression or a complex expression that is formed by applying operators to several basic expressions.
The regular meta-characters for expressions, and their uses, are as follows:
|
Operator |
Used for |
|
\ |
Used in escape sequences to specify characters that would otherwise have no representation (similar to those used in the C language). |
|
\b |
Backspace. |
|
\t |
Horizontal tab. |
|
\n |
Newline or linefeed. |
|
\f |
New page or form feed. |
|
\r |
Carriage return. |
|
\ddd |
Octal value. |
|
\c |
c represents any character string that is taken literally. |
|
^ |
The carat matches the beginning of a string. For example,, "^abc" matches only those strings which start with "abc". When used as the first character of a character class it denotes a negated class. |
|
$ |
The dollar matches the end of a string. For example,, "$z" will only match strings with "z" as the last character. |
|
. |
The full stop matches any single character. Be careful as ".*" will match everything. |
|
[ |
The open bracket denotes the start of a character class. |
|
] |
The closed bracket denotes the end of a character class. |
|
| |
The pipe character is the alternation operator, a|b" matched either "a" or "b". |
|
() |
Parentheses are used to group expressions in much the same way as for arithmetic expressions. |
|
* |
The closure operator matches 0 or more instances of the specified string. |
|
+ |
The plus sign indicates positive closure and matches 1 or more of the specified expression. For example,, "+z" matches a string of 1 or more "z"s. |
|
? |
The question mark matches 0 or 1 instance of the specified expression. For example, "?9" matches either the null string or "9". |
Character classes
Character classes are shorthand for matching one of several characters.
For example, [AaBb] is the same as (A|a|B|b)and matches "A", "a", "B", and "b".
There are also character ranges, such as [A-Z] that matches any uppercase character.
Negated character classes specify characters that should not be matched. For example,, [^A-Z] matches everything except upper case alpha characters.
Examples of Regular Expressions
All variable names that have a first branch of "System":
^System
All variable names that end in a number:
[0-9]$
All variable names:
.*