From 2603f1e2074b0f880886b533ffc47ecef4fd33f7 Mon Sep 17 00:00:00 2001
From: Neil
- There are methods to search for text and for regular expressions. The regular expression support
- is limited and should only be used for simple cases and initial development. A different regular expression
+ There are methods to search for text and for regular expressions. The base regular expression support
+ is limited and should only be used for simple cases and initial development.
+ When using a C++11 compliant compiler and runtime, it may be possible to use the
+ runtime's implementation of <regex> by compiling Scintilla with Searching
CXX11_REGEX defined.
+ A different regular expression
library can be integrated into Scintilla
or can be called from the container using direct access to the buffer contents through
.
@@ -658,6 +661,17 @@ struct Sci_TextRange {
Treat regular expression in a more POSIX compatible manner
by interpreting bare ( and ) for tagged sections rather than \( and \).
+
+
@@ -971,6 +985,8 @@ struct Sci_TextToFind {
If an error occurs, Scintilla may set an internal error number that can be retrieved with
+
+ SCFIND_CXX11REGEXWhen compiled with
+ CXX11_REGEX this flag
+ may be set to use <regex> instead of Scintilla's basic regular expressions.
+ If the regular expression is invalid then -1 is returned and status is set to
+ SC_STATUS_WARN_REGEX.
+ The ECMAScript flag is set on the regex object and UTF-8 documents will exhibit Unicode-compliant
+ behaviour. For MSVC, where wchar_t is 16-bits, the reular expression ".." will match a single
+ astral-plane character. There may be other differences between compilers.SCI_GETSTATUS.
To clear the error status call SCI_SETSTATUS(0).
+ Status values from 1 to 999 are errors and status SC_STATUS_WARN_START (1000)
+ and above are warnings.
The currently defined statuses are:
SC_TECHNOLOGY_DIRECTWRITERETAIN value for
SCI_SETTECHNOLOGY is provisional.
+ Using C++11 <regex> is provisional.
+Some developers may want to only use features that are stable and have graduated from
provisional status. To avoid using provisional messages compile with the symbol
SCI_DISABLE_PROVISIONAL defined.