A-4
Cisco IOS XR Getting Started Guide
OL-10957-02
AppendixA Understanding Regular Expressions, Special Characters, and Patterns
Pattern Alternation
The order for matches using multipliers (*, +, and ?) is to put the longest construct first. Nested
constructs are matched from outside to inside. Concat enated constructs are matched beginning at th e left
side of the construct. Thus, the regular expression matches A9b3, but not 9 Ab3 because the letters are
specified before the numbers.
Pattern Alternation
Alternation can be used to specify alternative patterns to match against a string. Separate the alternative
patterns with a vertical bar (|). Only one of the alternatives can match the string. For example, the regular
expression codex|telebit matches the string codex or the string telebit, but not both codex and telebit.
Anchor Characters
Anchoring can be used to match a regular expression pattern against the beginning or end of the string.
Regular expressions can be anchored to a portion of the string u sing the special characters shown in
Table A -3.
For example, the regular expression ^con matches any string that starts with con, and sole$ matches any
string that ends with sole.
In addition to indicating the beginning of a string, the ^ can be used to indicate the logical function “not”
when used in a bracketed range. For example, the expression [^abcd] indicates a range that matches any
single letter, as long as it is not the letters a, b, c, and d.
Underscore Wildcard
Use the underscore to match the beginning of a string (^), the end of a string ($), parentheses (( )) , space
( ), braces ({}), comma (,), and underscore (_). The underscore can be used to specify that a pattern exists
anywhere in the string. For example, _1300_ matches any string that has 1300 somewhere in the stri ng
and is preceded by or followed by a space, brace, comma, or underscore. Although _1300_ matches the
regular expression {1300_, it does not match the regular expressions 21300 and 13000t.
The underscore can replace long regular expression lists. For exam ple, instead of specifying
^1300( ) ( )1300$ {1300, ,1300, {1300} ,1300, (1300, simply specify _1300_.
Parentheses Used for Pattern Recall
Use parentheses with multiple-character regular expressions to multiply the occurrence of a pattern. The
Cisco IOS XR software can remember a pattern for use elsewhere in the regul ar expression.
TableA-3 Special Characters Used for Anchoring
Character Description
^ Matches the beginning of the string.
$ Matches the end of the string.