^
)This operator can match the empty string either at the beginning of the string or after a newline character. Thus, it is said to anchor the pattern to the beginning of a line.
In the cases following, `^' represents this operator. (Otherwise, `^' is ordinary.)
RE_CONTEXT_INDEP_ANCHORS
is set, and it is outside
a bracket expression.
(
... )
or \(
... \)
), and section The Alternation Operator (|
or \|
).
These rules imply that some valid patterns containing `^' cannot be
matched; for example, `foo^bar' if RE_CONTEXT_INDEP_ANCHORS
is set.
If the not_bol
field is set in the pattern buffer (see section GNU Pattern Buffers), then `^' fails to match at the beginning of the
string. See section POSIX Matching, for when you might find this useful.
If the newline_anchor
field is set in the pattern buffer, then
`^' fails to match after a newline. This is useful when you do not
regard the string to be matched as broken into lines.
Go to the first, previous, next, last section, table of contents.