Преглед на файлове

Help: Document how escape sequences work in a regex

Our regex engine doesn't interpret `\`-escapes but CMake language escape
sequences may be used to pass literal whitespace characters to it.
Brad King преди 7 години
родител
ревизия
4b35dab891
променени са 1 файла, в които са добавени 14 реда и са изтрити 0 реда
  1. 14 0
      Help/command/string.rst

+ 14 - 0
Help/command/string.rst

@@ -151,6 +151,20 @@ has lower precedence than concatenation.  This means that the regular
 expression ``^ab+d$`` matches ``abbd`` but not ``ababd``, and the regular
 expression ``^(ab|cd)$`` matches ``ab`` but not ``abd``.
 
+Backslash (``\``) characters in regular expressions are interpreted
+literally and do not escape anything or represent placeholders.
+However, CMake language :ref:`Escape Sequences` such as ``\t``,
+``\r``, ``\n``, and ``\\`` may be used to construct literal tabs,
+carriage returns, newlines, and backslashes (respectively) to pass
+in a regex.  For example:
+
+* The quoted argument ``"[ \t\r\n]"`` specifies a regex that matches
+  any single whitespace character.
+* The quoted argument ``"[/\\]"`` specifies a regex that matches
+  a single forward slash ``/`` or backslash ``\``.
+* The quoted argument ``"[A-Za-z0-9_]"`` specifies a regex that matches
+  any single "word" character in the C locale.
+
 Manipulation
 ^^^^^^^^^^^^