Blame


1 058b0118 2005-01-03 devnull .TH REGEXP9 7
2 058b0118 2005-01-03 devnull .de EX
3 058b0118 2005-01-03 devnull .nf
4 058b0118 2005-01-03 devnull .ft B
5 058b0118 2005-01-03 devnull ..
6 058b0118 2005-01-03 devnull .de EE
7 058b0118 2005-01-03 devnull .fi
8 058b0118 2005-01-03 devnull .ft R
9 058b0118 2005-01-03 devnull ..
10 058b0118 2005-01-03 devnull .de LR
11 058b0118 2005-01-03 devnull .if t .BR \\$1 \\$2
12 058b0118 2005-01-03 devnull .if n .RB ` \\$1 '\\$2
13 058b0118 2005-01-03 devnull ..
14 058b0118 2005-01-03 devnull .de L
15 058b0118 2005-01-03 devnull .nh
16 058b0118 2005-01-03 devnull .if t .B \\$1
17 058b0118 2005-01-03 devnull .if n .RB ` \\$1 '
18 058b0118 2005-01-03 devnull ..
19 058b0118 2005-01-03 devnull .SH NAME
20 058b0118 2005-01-03 devnull regexp9 \- Plan 9 regular expression notation
21 058b0118 2005-01-03 devnull .SH DESCRIPTION
22 058b0118 2005-01-03 devnull This manual page describes the regular expression
23 058b0118 2005-01-03 devnull syntax used by the Plan 9 regular expression library
24 058b0118 2005-01-03 devnull .IR regexp9 (3).
25 058b0118 2005-01-03 devnull It is the form used by
26 058b0118 2005-01-03 devnull .IR egrep (1)
27 058b0118 2005-01-03 devnull before
28 058b0118 2005-01-03 devnull .I egrep
29 058b0118 2005-01-03 devnull got complicated.
30 058b0118 2005-01-03 devnull .PP
31 058b0118 2005-01-03 devnull A
32 058b0118 2005-01-03 devnull .I "regular expression"
33 058b0118 2005-01-03 devnull specifies
34 058b0118 2005-01-03 devnull a set of strings of characters.
35 058b0118 2005-01-03 devnull A member of this set of strings is said to be
36 058b0118 2005-01-03 devnull .I matched
37 058b0118 2005-01-03 devnull by the regular expression. In many applications
38 058b0118 2005-01-03 devnull a delimiter character, commonly
39 058b0118 2005-01-03 devnull .LR / ,
40 058b0118 2005-01-03 devnull bounds a regular expression.
41 058b0118 2005-01-03 devnull In the following specification for regular expressions
42 058b0118 2005-01-03 devnull the word `character' means any character (rune) but newline.
43 058b0118 2005-01-03 devnull .PP
44 058b0118 2005-01-03 devnull The syntax for a regular expression
45 058b0118 2005-01-03 devnull .B e0
46 058b0118 2005-01-03 devnull is
47 058b0118 2005-01-03 devnull .IP
48 058b0118 2005-01-03 devnull .EX
49 058b0118 2005-01-03 devnull e3: literal | charclass | '.' | '^' | '$' | '(' e0 ')'
50 058b0118 2005-01-03 devnull
51 058b0118 2005-01-03 devnull e2: e3
52 058b0118 2005-01-03 devnull | e2 REP
53 058b0118 2005-01-03 devnull
54 058b0118 2005-01-03 devnull REP: '*' | '+' | '?'
55 058b0118 2005-01-03 devnull
56 058b0118 2005-01-03 devnull e1: e2
57 058b0118 2005-01-03 devnull | e1 e2
58 058b0118 2005-01-03 devnull
59 058b0118 2005-01-03 devnull e0: e1
60 058b0118 2005-01-03 devnull | e0 '|' e1
61 058b0118 2005-01-03 devnull .EE
62 058b0118 2005-01-03 devnull .PP
63 058b0118 2005-01-03 devnull A
64 058b0118 2005-01-03 devnull .B literal
65 058b0118 2005-01-03 devnull is any non-metacharacter, or a metacharacter
66 058b0118 2005-01-03 devnull (one of
67 058b0118 2005-01-03 devnull .BR .*+?[]()|\e^$ ),
68 058b0118 2005-01-03 devnull or the delimiter
69 058b0118 2005-01-03 devnull preceded by
70 058b0118 2005-01-03 devnull .LR \e .
71 058b0118 2005-01-03 devnull .PP
72 058b0118 2005-01-03 devnull A
73 058b0118 2005-01-03 devnull .B charclass
74 058b0118 2005-01-03 devnull is a nonempty string
75 058b0118 2005-01-03 devnull .I s
76 058b0118 2005-01-03 devnull bracketed
77 058b0118 2005-01-03 devnull .BI [ \|s\| ]
78 058b0118 2005-01-03 devnull (or
79 058b0118 2005-01-03 devnull .BI [^ s\| ]\fR);
80 058b0118 2005-01-03 devnull it matches any character in (or not in)
81 058b0118 2005-01-03 devnull .IR s .
82 058b0118 2005-01-03 devnull A negated character class never
83 058b0118 2005-01-03 devnull matches newline.
84 058b0118 2005-01-03 devnull A substring
85 058b0118 2005-01-03 devnull .IB a - b\f1,
86 058b0118 2005-01-03 devnull with
87 058b0118 2005-01-03 devnull .I a
88 058b0118 2005-01-03 devnull and
89 058b0118 2005-01-03 devnull .I b
90 058b0118 2005-01-03 devnull in ascending
91 058b0118 2005-01-03 devnull order, stands for the inclusive
92 058b0118 2005-01-03 devnull range of
93 058b0118 2005-01-03 devnull characters between
94 058b0118 2005-01-03 devnull .I a
95 058b0118 2005-01-03 devnull and
96 058b0118 2005-01-03 devnull .IR b .
97 058b0118 2005-01-03 devnull In
98 058b0118 2005-01-03 devnull .IR s ,
99 058b0118 2005-01-03 devnull the metacharacters
100 058b0118 2005-01-03 devnull .LR - ,
101 058b0118 2005-01-03 devnull .LR ] ,
102 058b0118 2005-01-03 devnull an initial
103 058b0118 2005-01-03 devnull .LR ^ ,
104 058b0118 2005-01-03 devnull and the regular expression delimiter
105 058b0118 2005-01-03 devnull must be preceded by a
106 058b0118 2005-01-03 devnull .LR \e ;
107 058b0118 2005-01-03 devnull other metacharacters
108 058b0118 2005-01-03 devnull have no special meaning and
109 058b0118 2005-01-03 devnull may appear unescaped.
110 058b0118 2005-01-03 devnull .PP
111 058b0118 2005-01-03 devnull A
112 058b0118 2005-01-03 devnull .L .
113 058b0118 2005-01-03 devnull matches any character.
114 058b0118 2005-01-03 devnull .PP
115 058b0118 2005-01-03 devnull A
116 058b0118 2005-01-03 devnull .L ^
117 058b0118 2005-01-03 devnull matches the beginning of a line;
118 058b0118 2005-01-03 devnull .L $
119 058b0118 2005-01-03 devnull matches the end of the line.
120 058b0118 2005-01-03 devnull .PP
121 058b0118 2005-01-03 devnull The
122 058b0118 2005-01-03 devnull .B REP
123 058b0118 2005-01-03 devnull operators match zero or more
124 058b0118 2005-01-03 devnull .RB ( * ),
125 058b0118 2005-01-03 devnull one or more
126 058b0118 2005-01-03 devnull .RB ( + ),
127 058b0118 2005-01-03 devnull zero or one
128 058b0118 2005-01-03 devnull .RB ( ? ),
129 058b0118 2005-01-03 devnull instances respectively of the preceding regular expression
130 058b0118 2005-01-03 devnull .BR e2 .
131 058b0118 2005-01-03 devnull .PP
132 058b0118 2005-01-03 devnull A concatenated regular expression,
133 058b0118 2005-01-03 devnull .BR "e1\|e2" ,
134 058b0118 2005-01-03 devnull matches a match to
135 058b0118 2005-01-03 devnull .B e1
136 058b0118 2005-01-03 devnull followed by a match to
137 058b0118 2005-01-03 devnull .BR e2 .
138 058b0118 2005-01-03 devnull .PP
139 058b0118 2005-01-03 devnull An alternative regular expression,
140 058b0118 2005-01-03 devnull .BR "e0\||\|e1" ,
141 058b0118 2005-01-03 devnull matches either a match to
142 058b0118 2005-01-03 devnull .B e0
143 058b0118 2005-01-03 devnull or a match to
144 058b0118 2005-01-03 devnull .BR e1 .
145 058b0118 2005-01-03 devnull .PP
146 058b0118 2005-01-03 devnull A match to any part of a regular expression
147 058b0118 2005-01-03 devnull extends as far as possible without preventing
148 058b0118 2005-01-03 devnull a match to the remainder of the regular expression.
149 058b0118 2005-01-03 devnull .SH "SEE ALSO"
150 058b0118 2005-01-03 devnull .IR regexp9 (3)