noble (7) regexp.7.gz

Provided by: 9base_6-14_amd64 bug

NAME

       regexp - Plan 9 regular expression notation

DESCRIPTION

       This  manual  page  describes the regular expression syntax used by the Plan 9 regular expression library
       regexp(3).  It is the form used by egrep(1) before egrep got complicated.

       A regular expression specifies a set of strings of characters.  A member of this set of strings  is  said
       to  be  matched by the regular expression.  In many applications a delimiter character, commonly bounds a
       regular expression.  In the following specification for regular expressions the  word  `character'  means
       any character (rune) but newline.

       The syntax for a regular expression e0 is

              e3:  literal | charclass | '.' | '^' | '$' | '(' e0 ')'

              e2:  e3
                |  e2 REP

              REP: '*' | '+' | '?'

              e1:  e2
                |  e1 e2

              e0:  e1
                |  e0 '|' e1

       A  literal  is any non-metacharacter, or a metacharacter (one of .*+?[]()|\^$), or the delimiter preceded
       by

       A charclass is a nonempty string s bracketed [s] (or [^s]); it matches any character in (or not in) s.  A
       negated  character class never matches newline.  A substring a-b, with a and b in ascending order, stands
       for the inclusive range of characters between a and b.  In s,  the  metacharacters  an  initial  and  the
       regular  expression  delimiter must be preceded by a other metacharacters have no special meaning and may
       appear unescaped.

       A matches any character.

       A matches the beginning of a line; matches the end of the line.

       The REP operators match zero or more (*), one or more (+), zero or one (?), instances respectively of the
       preceding regular expression e2.

       A concatenated regular expression, e1e2, matches a match to e1 followed by a match to e2.

       An alternative regular expression, e0|e1, matches either a match to e0 or a match to e1.

       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.

SEE ALSO

       regexp(3)

                                                                                                       REGEXP(7)