mirror of https://github.com/0intro/wmii
142 lines
2.2 KiB
Groff
142 lines
2.2 KiB
Groff
.deEX
|
|
.ift .ft5
|
|
.nf
|
|
..
|
|
.deEE
|
|
.ft1
|
|
.fi
|
|
..
|
|
.TH REGEXP9 7
|
|
.SH NAME
|
|
regexp \- Plan 9 regular expression notation
|
|
.SH DESCRIPTION
|
|
This manual page describes the regular expression
|
|
syntax used by the Plan 9 regular expression library
|
|
.IR regexp9 (3).
|
|
It is the form used by
|
|
.IR egrep (1)
|
|
before
|
|
.I egrep
|
|
got complicated.
|
|
.PP
|
|
A
|
|
.I "regular expression"
|
|
specifies
|
|
a set of strings of characters.
|
|
A member of this set of strings is said to be
|
|
.I matched
|
|
by the regular expression. In many applications
|
|
a delimiter character, commonly
|
|
.LR / ,
|
|
bounds a regular expression.
|
|
In the following specification for regular expressions
|
|
the word `character' means any character (rune) but newline.
|
|
.PP
|
|
The syntax for a regular expression
|
|
.B e0
|
|
is
|
|
.IP
|
|
.EX
|
|
e3: literal | charclass | '.' | '^' | '$' | '(' e0 ')'
|
|
|
|
e2: e3
|
|
| e2 REP
|
|
|
|
REP: '*' | '+' | '?'
|
|
|
|
e1: e2
|
|
| e1 e2
|
|
|
|
e0: e1
|
|
| e0 '|' e1
|
|
.EE
|
|
.PP
|
|
A
|
|
.B literal
|
|
is any non-metacharacter, or a metacharacter
|
|
(one of
|
|
.BR .*+?[]()|\e^$ ),
|
|
or the delimiter
|
|
preceded by
|
|
.LR \e .
|
|
.PP
|
|
A
|
|
.B charclass
|
|
is a nonempty string
|
|
.I s
|
|
bracketed
|
|
.BI [ \|s\| ]
|
|
(or
|
|
.BI [^ s\| ]\fR);
|
|
it matches any character in (or not in)
|
|
.IR s .
|
|
A negated character class never
|
|
matches newline.
|
|
A substring
|
|
.IB a - b\f1,
|
|
with
|
|
.I a
|
|
and
|
|
.I b
|
|
in ascending
|
|
order, stands for the inclusive
|
|
range of
|
|
characters between
|
|
.I a
|
|
and
|
|
.IR b .
|
|
In
|
|
.IR s ,
|
|
the metacharacters
|
|
.LR - ,
|
|
.LR ] ,
|
|
an initial
|
|
.LR ^ ,
|
|
and the regular expression delimiter
|
|
must be preceded by a
|
|
.LR \e ;
|
|
other metacharacters
|
|
have no special meaning and
|
|
may appear unescaped.
|
|
.PP
|
|
A
|
|
.L .
|
|
matches any character.
|
|
.PP
|
|
A
|
|
.L ^
|
|
matches the beginning of a line;
|
|
.L $
|
|
matches the end of the line.
|
|
.PP
|
|
The
|
|
.B REP
|
|
operators match zero or more
|
|
.RB ( * ),
|
|
one or more
|
|
.RB ( + ),
|
|
zero or one
|
|
.RB ( ? ),
|
|
instances respectively of the preceding regular expression
|
|
.BR e2 .
|
|
.PP
|
|
A concatenated regular expression,
|
|
.BR "e1\|e2" ,
|
|
matches a match to
|
|
.B e1
|
|
followed by a match to
|
|
.BR e2 .
|
|
.PP
|
|
An alternative regular expression,
|
|
.BR "e0\||\|e1" ,
|
|
matches either a match to
|
|
.B e0
|
|
or a match to
|
|
.BR e1 .
|
|
.PP
|
|
A match to any part of a regular expression
|
|
extends as far as possible without preventing
|
|
a match to the remainder of the regular expression.
|
|
.SH "SEE ALSO
|
|
.IR regexp9 (3)
|