prev UP NEXT Regex

3.9.1: The Match-beginning-of-line Operator (^)

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.)

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 GNU Pattern Buffers), then ^ fails to match at the beginning of the string. See 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.