Regular expression

Posted on Jul 3, 2022

“$” are different in basic regular expression and extend regular expression, see https://stackoverflow.com/questions/38114132/why-does-dollar-not-match-literal-dollar-when-extended-regex-ere-option-is-use.

https://www.gnu.org/software/findutils/manual/html_node/find_html/posix_002degrep-regular-expression-syntax.html#posix_002degrep-regular-expression-syntax

  • posix-egrep’ regular expression syntax:
  • The characters ‘^’ and ‘$’ always represent the beginning and end of a string respectively, except within square brackets. Within brackets, ‘^’ can be used to invert the membership of the character class being specified.
  • ‘posix-basic’ regular expression syntax:
    • The character ‘^’ only represents the beginning of a string when it appears:

      • At the beginning of a regular expression

      • After an open-group, signified by ‘(’

      • After the alternation operator ‘|’+ The character ‘$’ only represents the end of a string when it appears:

      • At the end of a regular expression

      • Before a close-group, signified by ‘)’

      • Before the alternation operator ‘|’