Programmer's WorkBench (pwb.hlp) (
Table of Contents;
Topic list)
Important Notice
The pages on this site contain documentation for very old MS-DOS software,
purely for historical purposes.
If you're looking for up-to-date documentation, particularly for programming,
you should not rely on the information found here, as it will be woefully
out of date.
UNIX Regular Expressions
◄Summary► ◄Up► ◄Contents► ◄Index► ◄Back►
─────Programmer's WorkBench─────────────────────────────────────────────────
PWB uses the following UNIX-style regular-expression syntax:
Syntax Description
\c Escape: matches a literal occurrence of the
character <c> and ignores any special meaning of
<c> in a regular expression.
For example, the expression '\?' matches a question
mark '?', the expression '\^' matches a caret '^',
and the expression '\\' matches a backslash '\'.
. Wildcard: matches any single character.
For example, the expression 'a.a' matches 'aaa',
'aBa', and 'a1a' but not 'aBBBa'.
^ Beginning of line.
For example, the expression '^The' matches the word
'The' only when it occurs at the beginning of a
line.
$ End of line.
For example, the expression 'end$' matches the word
'end' only when it occurs at the end of a line.
[class] Character class: matches any one character in the
class. Use a dash (-) to specify ranges. Within a
class, all characters except ^-\] are treated
literally.
For example, '[a-zA-Z0-9]' matches any character or
digit, and '[abc]' matches 'a', 'b', or 'c'.
[^class] Inverse of character class: matches any character
not specified in the class.
For example, [^0-9] matches any character that is
not a digit.
x* Repeat operator: matches zero or more occurrences
of <x>, where <x> is a single character, a
character class, or a set of regular expressions
specified with the alternation syntax.
For example, the regular expression 'ba*b' matches
'baaab', 'bab', and 'bb'. This operator always
matches as many characters as possible.
x+ Repeat operator (shorthand for xx*): matches one or
more occurrences of <x>.
The regular expression 'ba+b' matches 'baab' and
'bab' but not 'bb'.
\(x\) Tagged expression: marked text, which you can refer
to as '\n' elsewhere in the find or replacement
string. Within a find string, PWB finds text that
contains the tagged text. Within a replacement
string, PWB reuses the matched text in the
replacement.
See: ◄Tagged Regular Expressions►
\n References the characters matched by a tagged
expression, where <n> is a one-digit number and
indicates which expression. The first tagged
expression is '\1', the second is '\2', and so on.
The entire expression is represented as '\0'.
See: ◄Tagged Regular Expressions►
\{x\} Grouping. Groups a regular expression so that you
can use a repeat operator on the subexpression.
For example, the regular expression '\{Test\}+'
matches 'Test' and 'TestTest'.
\{x\!y\!z\} Alternation: matches one from a set of alternate
patterns. The alternates are tried in left-to-right
order. The next alternate is tried only when the
rest of the pattern fails.
For example, '\{ +\!$\}' matches a sequence of
blanks or the end of a line.
TIP: To match zero or one occurrences of a pattern,
use alternation with an empty alternative:
\{x\!\}
This specifies one occurrence of <x> or
nothing.
\~x "NOT" function: matches nothing but checks to see
whether the text matches <x> at this point and
fails if it does.
For example, '^\~\{ \!$\}.*' matches all lines that
do not begin with white space or end of line.
\:e Predefined regular expression, where <e> is a
letter specifying the regular expression.
See: ◄Predefined Regular Expressions►
See
◄UNIX Regular Expression Examples►
-♦-