2007-06-08 09:23:23 +00:00
< html >
< head >
2020-10-12 18:22:57 +01:00
< meta http-equiv = "Content-Type" content = "text/html; charset=UTF-8" >
2007-12-14 10:11:21 +00:00
< title > Localization< / title >
2010-07-08 22:49:58 +00:00
< link rel = "stylesheet" href = "../../../../../../doc/src/boostbook.css" type = "text/css" >
2019-10-26 10:51:25 +01:00
< meta name = "generator" content = "DocBook XSL Stylesheets V1.79.1" >
2022-03-08 11:26:11 +00:00
< link rel = "home" href = "../../index.html" title = "Boost.Regex 7.0.1" >
2017-08-01 18:01:46 +01:00
< link rel = "up" href = "../background.html" title = "Background Information" >
2007-12-14 10:11:21 +00:00
< link rel = "prev" href = "headers.html" title = "Headers" >
< link rel = "next" href = "thread_safety.html" title = "Thread Safety" >
2024-03-23 19:03:45 +00:00
< meta name = "viewport" content = "width=device-width, initial-scale=1" >
2007-06-08 09:23:23 +00:00
< / head >
< body bgcolor = "white" text = "black" link = "#0000FF" vlink = "#840084" alink = "#0000FF" >
2007-08-13 17:54:01 +00:00
< table cellpadding = "2" width = "100%" > < tr >
2007-06-08 09:23:23 +00:00
< td valign = "top" > < img alt = "Boost C++ Libraries" width = "277" height = "86" src = "../../../../../../boost.png" > < / td >
2008-04-11 08:53:54 +00:00
< td align = "center" > < a href = "../../../../../../index.html" > Home< / a > < / td >
2007-06-08 09:23:23 +00:00
< td align = "center" > < a href = "../../../../../../libs/libraries.htm" > Libraries< / a > < / td >
2008-07-25 09:28:01 +00:00
< td align = "center" > < a href = "http://www.boost.org/users/people.html" > People< / a > < / td >
< td align = "center" > < a href = "http://www.boost.org/users/faq.html" > FAQ< / a > < / td >
2007-06-08 09:23:23 +00:00
< td align = "center" > < a href = "../../../../../../more/index.htm" > More< / a > < / td >
2007-08-13 17:54:01 +00:00
< / tr > < / table >
2007-06-08 09:23:23 +00:00
< hr >
< div class = "spirit-nav" >
2017-08-01 18:01:46 +01:00
< a accesskey = "p" href = "headers.html" > < img src = "../../../../../../doc/src/images/prev.png" alt = "Prev" > < / a > < a accesskey = "u" href = "../background.html" > < img src = "../../../../../../doc/src/images/up.png" alt = "Up" > < / a > < a accesskey = "h" href = "../../index.html" > < img src = "../../../../../../doc/src/images/home.png" alt = "Home" > < / a > < a accesskey = "n" href = "thread_safety.html" > < img src = "../../../../../../doc/src/images/next.png" alt = "Next" > < / a >
2007-06-08 09:23:23 +00:00
< / div >
2013-12-14 17:42:13 +00:00
< div class = "section" >
2007-06-08 09:23:23 +00:00
< div class = "titlepage" > < div > < div > < h3 class = "title" >
2017-08-01 18:01:46 +01:00
< a name = "boost_regex.background.locale" > < / a > < a class = "link" href = "locale.html" title = "Localization" > Localization< / a >
2007-12-14 10:11:21 +00:00
< / h3 > < / div > < / div > < / div >
2007-06-08 09:23:23 +00:00
< p >
Boost.Regex provides extensive support for run-time localization, the localization
model used can be split into two parts: front-end and back-end.
< / p >
< p >
Front-end localization deals with everything which the user sees - error
messages, and the regular expression syntax itself. For example a French
application could change [[:word:]] to [[:mot:]] and \w to \m. Modifying
the front end locale requires active support from the developer, by providing
the library with a message catalogue to load, containing the localized strings.
Front-end locale is affected by the LC_MESSAGES category only.
< / p >
< p >
Back-end localization deals with everything that occurs after the expression
has been parsed - in other words everything that the user does not see or
interact with directly. It deals with case conversion, collation, and character
class membership. The back-end locale does not require any intervention from
the developer - the library will acquire all the information it requires
for the current locale from the underlying operating system / run time library.
This means that if the program user does not interact with regular expressions
directly - for example if the expressions are embedded in your C++ code -
then no explicit localization is required, as the library will take care
of everything for you. For example embedding the expression [[:word:]]+ in
your code will always match a whole word, if the program is run on a machine
with, for example, a Greek locale, then it will still match a whole word,
but in Greek characters rather than Latin ones. The back-end locale is affected
by the LC_TYPE and LC_COLLATE categories.
< / p >
< p >
There are three separate localization mechanisms supported by Boost.Regex:
< / p >
2011-12-24 17:51:57 +00:00
< h5 >
2017-08-01 18:01:46 +01:00
< a name = "boost_regex.background.locale.h0" > < / a >
< span class = "phrase" > < a name = "boost_regex.background.locale.win32_localization_model" > < / a > < / span > < a class = "link" href = "locale.html#boost_regex.background.locale.win32_localization_model" > Win32 localization
model.< / a >
2007-12-14 10:11:21 +00:00
< / h5 >
2007-06-08 09:23:23 +00:00
< p >
This is the default model when the library is compiled under Win32, and is
2007-12-14 10:11:21 +00:00
encapsulated by the traits class < code class = "computeroutput" > < span class = "identifier" > w32_regex_traits< / span > < / code > .
2008-12-23 11:46:00 +00:00
When this model is in effect each < a class = "link" href = "../ref/basic_regex.html" title = "basic_regex" > < code class = "computeroutput" > < span class = "identifier" > basic_regex< / span > < / code > < / a > object gets it's own
2007-06-08 09:23:23 +00:00
LCID, by default this is the users default setting as returned by GetUserDefaultLCID,
2007-12-14 10:11:21 +00:00
but you can call imbue on the < code class = "computeroutput" > < span class = "identifier" > basic_regex< / span > < / code >
2007-06-08 09:23:23 +00:00
object to set it's locale to some other LCID if you wish. All the settings
used by Boost.Regex are acquired directly from the operating system bypassing
the C run time library. Front-end localization requires a resource dll, containing
a string table with the user-defined strings. The traits class exports the
function:
< / p >
2007-12-14 10:11:21 +00:00
< pre class = "programlisting" > < span class = "keyword" > static< / span > < span class = "identifier" > std< / span > < span class = "special" > ::< / span > < span class = "identifier" > string< / span > < span class = "identifier" > set_message_catalogue< / span > < span class = "special" > (< / span > < span class = "keyword" > const< / span > < span class = "identifier" > std< / span > < span class = "special" > ::< / span > < span class = "identifier" > string< / span > < span class = "special" > & < / span > < span class = "identifier" > s< / span > < span class = "special" > );< / span >
2007-06-08 09:23:23 +00:00
< / pre >
< p >
which needs to be called with a string identifying the name of the resource
dll, before your code compiles any regular expressions (but not necessarily
2007-12-14 10:11:21 +00:00
before you construct any < code class = "computeroutput" > < span class = "identifier" > basic_regex< / span > < / code >
2007-06-08 09:23:23 +00:00
instances):
< / p >
2007-12-14 10:11:21 +00:00
< pre class = "programlisting" > < span class = "identifier" > boost< / span > < span class = "special" > ::< / span > < span class = "identifier" > w32_regex_traits< / span > < span class = "special" > < < / span > < span class = "keyword" > char< / span > < span class = "special" > > ::< / span > < span class = "identifier" > set_message_catalogue< / span > < span class = "special" > (< / span > < span class = "string" > "mydll.dll"< / span > < span class = "special" > );< / span >
2007-06-08 09:23:23 +00:00
< / pre >
< p >
The library provides full Unicode support under NT, under Windows 9x the
library degrades gracefully - characters 0 to 255 are supported, the remainder
are treated as "unknown" graphic characters.
< / p >
2011-12-24 17:51:57 +00:00
< h5 >
2017-08-01 18:01:46 +01:00
< a name = "boost_regex.background.locale.h1" > < / a >
< span class = "phrase" > < a name = "boost_regex.background.locale.c_localization_model" > < / a > < / span > < a class = "link" href = "locale.html#boost_regex.background.locale.c_localization_model" > C
2007-06-08 09:23:23 +00:00
localization model.< / a >
2007-12-14 10:11:21 +00:00
< / h5 >
2007-06-08 09:23:23 +00:00
< p >
This model has been deprecated in favor of the C++ locale for all non-Windows
compilers that support it. This locale is encapsulated by the traits class
2007-12-14 10:11:21 +00:00
< code class = "computeroutput" > < span class = "identifier" > c_regex_traits< / span > < / code > , Win32 users
2007-06-08 09:23:23 +00:00
can force this model to take effect by defining the pre-processor symbol
BOOST_REGEX_USE_C_LOCALE. When this model is in effect there is a single
2007-12-14 10:11:21 +00:00
global locale, as set by < code class = "computeroutput" > < span class = "identifier" > setlocale< / span > < / code > .
2007-06-08 09:23:23 +00:00
All settings are acquired from your run time library, consequently Unicode
support is dependent upon your run time library implementation.
< / p >
< p >
Front end localization is not supported.
< / p >
< p >
Note that calling setlocale invalidates all compiled regular expressions,
2007-12-14 10:11:21 +00:00
calling < code class = "computeroutput" > < span class = "identifier" > setlocale< / span > < span class = "special" > (< / span > < span class = "identifier" > LC_ALL< / span > < span class = "special" > ,< / span > < span class = "string" > "C"< / span > < span class = "special" > )< / span > < / code >
2007-06-08 09:23:23 +00:00
will make this library behave equivalent to most traditional regular expression
libraries including version 1 of this library.
< / p >
2011-12-24 17:51:57 +00:00
< h5 >
2017-08-01 18:01:46 +01:00
< a name = "boost_regex.background.locale.h2" > < / a >
< span class = "phrase" > < a name = "boost_regex.background.locale.c_localization_model0" > < / a > < / span > < a class = "link" href = "locale.html#boost_regex.background.locale.c_localization_model0" > C++
2007-06-08 09:23:23 +00:00
localization model.< / a >
2007-12-14 10:11:21 +00:00
< / h5 >
2007-06-08 09:23:23 +00:00
< p >
This model is the default for non-Windows compilers.
< / p >
< p >
2008-12-23 11:46:00 +00:00
When this model is in effect each instance of < a class = "link" href = "../ref/basic_regex.html" title = "basic_regex" > < code class = "computeroutput" > < span class = "identifier" > basic_regex< / span > < / code > < / a > has its own instance
of < code class = "computeroutput" > < span class = "identifier" > std< / span > < span class = "special" > ::< / span > < span class = "identifier" > locale< / span > < / code > , class < a class = "link" href = "../ref/basic_regex.html" title = "basic_regex" > < code class = "computeroutput" > < span class = "identifier" > basic_regex< / span > < / code > < / a > also has a member function
2007-12-14 10:11:21 +00:00
< code class = "computeroutput" > < span class = "identifier" > imbue< / span > < / code > which allows the locale
2007-06-08 09:23:23 +00:00
for the expression to be set on a per-instance basis. Front end localization
2007-12-14 10:11:21 +00:00
requires a POSIX message catalogue, which will be loaded via the < code class = "computeroutput" > < span class = "identifier" > std< / span > < span class = "special" > ::< / span > < span class = "identifier" > messages< / span > < / code >
2007-06-08 09:23:23 +00:00
facet of the expression's locale, the traits class exports the symbol:
< / p >
2007-12-14 10:11:21 +00:00
< pre class = "programlisting" > < span class = "keyword" > static< / span > < span class = "identifier" > std< / span > < span class = "special" > ::< / span > < span class = "identifier" > string< / span > < span class = "identifier" > set_message_catalogue< / span > < span class = "special" > (< / span > < span class = "keyword" > const< / span > < span class = "identifier" > std< / span > < span class = "special" > ::< / span > < span class = "identifier" > string< / span > < span class = "special" > & < / span > < span class = "identifier" > s< / span > < span class = "special" > );< / span >
2007-06-08 09:23:23 +00:00
< / pre >
< p >
which needs to be called with a string identifying the name of the message
catalogue, before your code compiles any regular expressions (but not necessarily
before you construct any basic_regex instances):
< / p >
2007-12-14 10:11:21 +00:00
< pre class = "programlisting" > < span class = "identifier" > boost< / span > < span class = "special" > ::< / span > < span class = "identifier" > cpp_regex_traits< / span > < span class = "special" > < < / span > < span class = "keyword" > char< / span > < span class = "special" > > ::< / span > < span class = "identifier" > set_message_catalogue< / span > < span class = "special" > (< / span > < span class = "string" > "mycatalogue"< / span > < span class = "special" > );< / span >
2007-06-08 09:23:23 +00:00
< / pre >
< p >
2007-12-14 10:11:21 +00:00
Note that calling < code class = "computeroutput" > < span class = "identifier" > basic_regex< / span > < span class = "special" > < > ::< / span > < span class = "identifier" > imbue< / span > < / code >
2008-12-23 11:46:00 +00:00
will invalidate any expression currently compiled in that instance of < a class = "link" href = "../ref/basic_regex.html" title = "basic_regex" > < code class = "computeroutput" > < span class = "identifier" > basic_regex< / span > < / code > < / a > .
2007-06-08 09:23:23 +00:00
< / p >
< p >
Finally note that if you build the library with a non-default localization
model, then the appropriate pre-processor symbol (BOOST_REGEX_USE_C_LOCALE
or BOOST_REGEX_USE_CPP_LOCALE) must be defined both when you build the support
2007-12-14 10:11:21 +00:00
library, and when you include < code class = "computeroutput" > < span class = "special" > < < / span > < span class = "identifier" > boost< / span > < span class = "special" > /< / span > < span class = "identifier" > regex< / span > < span class = "special" > .< / span > < span class = "identifier" > hpp< / span > < span class = "special" > > < / span > < / code >
or < code class = "computeroutput" > < span class = "special" > < < / span > < span class = "identifier" > boost< / span > < span class = "special" > /< / span > < span class = "identifier" > cregex< / span > < span class = "special" > .< / span > < span class = "identifier" > hpp< / span > < span class = "special" > > < / span > < / code >
in your code. The best way to ensure this is to add the #define to < code class = "computeroutput" > < span class = "special" > < < / span > < span class = "identifier" > boost< / span > < span class = "special" > /< / span > < span class = "identifier" > regex< / span > < span class = "special" > /< / span > < span class = "identifier" > user< / span > < span class = "special" > .< / span > < span class = "identifier" > hpp< / span > < span class = "special" > > < / span > < / code > .
2007-06-08 09:23:23 +00:00
< / p >
2011-12-24 17:51:57 +00:00
< h5 >
2017-08-01 18:01:46 +01:00
< a name = "boost_regex.background.locale.h3" > < / a >
< span class = "phrase" > < a name = "boost_regex.background.locale.providing_a_message_catalogue" > < / a > < / span > < a class = "link" href = "locale.html#boost_regex.background.locale.providing_a_message_catalogue" > Providing
2007-06-08 09:23:23 +00:00
a message catalogue< / a >
2007-12-14 10:11:21 +00:00
< / h5 >
2007-06-08 09:23:23 +00:00
< p >
In order to localize the front end of the library, you need to provide the
library with the appropriate message strings contained either in a resource
dll's string table (Win32 model), or a POSIX message catalogue (C++ models).
In the latter case the messages must appear in message set zero of the catalogue.
The messages and their id's are as follows:
< / p >
< div class = "informaltable" > < table class = "table" >
< colgroup >
< col >
< col >
< col >
< / colgroup >
< thead > < tr >
< th >
2010-07-08 22:49:58 +00:00
< p >
Message
< / p >
2007-06-08 09:23:23 +00:00
< / th >
< th >
2010-07-08 22:49:58 +00:00
< p >
id
< / p >
2007-06-08 09:23:23 +00:00
< / th >
< th >
2010-07-08 22:49:58 +00:00
< p >
Meaning
< / p >
2007-06-08 09:23:23 +00:00
< / th >
< th >
2010-07-08 22:49:58 +00:00
< p >
Default value
< / p >
2007-06-08 09:23:23 +00:00
< / th >
< / tr > < / thead >
< tbody >
< tr >
< td >
2010-07-08 22:49:58 +00:00
< p >
101
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
The character used to start a sub-expression.
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
"("
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< / tr >
< tr >
< td >
2010-07-08 22:49:58 +00:00
< p >
102
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
The character used to end a sub-expression declaration.
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
")"
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< / tr >
< tr >
< td >
2010-07-08 22:49:58 +00:00
< p >
103
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
The character used to denote an end of line assertion.
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
"$"
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< / tr >
< tr >
< td >
2010-07-08 22:49:58 +00:00
< p >
104
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
The character used to denote the start of line assertion.
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
"^"
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< / tr >
< tr >
< td >
2010-07-08 22:49:58 +00:00
< p >
105
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
The character used to denote the "match any character expression".
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
"."
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< / tr >
< tr >
< td >
2010-07-08 22:49:58 +00:00
< p >
106
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
The match zero or more times repetition operator.
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
"*"
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< / tr >
< tr >
< td >
2010-07-08 22:49:58 +00:00
< p >
107
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
The match one or more repetition operator.
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
"+"
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< / tr >
< tr >
< td >
2010-07-08 22:49:58 +00:00
< p >
108
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
The match zero or one repetition operator.
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
"?"
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< / tr >
< tr >
< td >
2010-07-08 22:49:58 +00:00
< p >
109
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
The character set opening character.
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
"["
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< / tr >
< tr >
< td >
2010-07-08 22:49:58 +00:00
< p >
110
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
The character set closing character.
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
"]"
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< / tr >
< tr >
< td >
2010-07-08 22:49:58 +00:00
< p >
111
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
The alternation operator.
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
"|"
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< / tr >
< tr >
< td >
2010-07-08 22:49:58 +00:00
< p >
112
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
The escape character.
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
"\"
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< / tr >
< tr >
< td >
2010-07-08 22:49:58 +00:00
< p >
113
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
The hash character (not currently used).
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
"#"
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< / tr >
< tr >
< td >
2010-07-08 22:49:58 +00:00
< p >
114
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
The range operator.
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
"-"
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< / tr >
< tr >
< td >
2010-07-08 22:49:58 +00:00
< p >
115
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
The repetition operator opening character.
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
"{"
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< / tr >
< tr >
< td >
2010-07-08 22:49:58 +00:00
< p >
116
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
The repetition operator closing character.
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
"}"
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< / tr >
< tr >
< td >
2010-07-08 22:49:58 +00:00
< p >
117
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
The digit characters.
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
"0123456789"
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< / tr >
< tr >
< td >
2010-07-08 22:49:58 +00:00
< p >
118
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
The character which when preceded by an escape character represents
the word boundary assertion.
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
"b"
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< / tr >
< tr >
< td >
2010-07-08 22:49:58 +00:00
< p >
119
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
The character which when preceded by an escape character represents
the non-word boundary assertion.
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
"B"
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< / tr >
< tr >
< td >
2010-07-08 22:49:58 +00:00
< p >
120
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
The character which when preceded by an escape character represents
the word-start boundary assertion.
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
"< "
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< / tr >
< tr >
< td >
2010-07-08 22:49:58 +00:00
< p >
121
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
The character which when preceded by an escape character represents
the word-end boundary assertion.
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
"> "
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< / tr >
< tr >
< td >
2010-07-08 22:49:58 +00:00
< p >
122
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
The character which when preceded by an escape character represents
any word character.
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
"w"
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< / tr >
< tr >
< td >
2010-07-08 22:49:58 +00:00
< p >
123
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
The character which when preceded by an escape character represents
a non-word character.
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
"W"
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< / tr >
< tr >
< td >
2010-07-08 22:49:58 +00:00
< p >
124
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
The character which when preceded by an escape character represents
a start of buffer assertion.
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
"`A"
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< / tr >
< tr >
< td >
2010-07-08 22:49:58 +00:00
< p >
125
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
The character which when preceded by an escape character represents
an end of buffer assertion.
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
"'z"
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< / tr >
< tr >
< td >
2010-07-08 22:49:58 +00:00
< p >
126
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
The newline character.
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
"\n"
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< / tr >
< tr >
< td >
2010-07-08 22:49:58 +00:00
< p >
127
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
The comma separator.
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
","
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< / tr >
< tr >
< td >
2010-07-08 22:49:58 +00:00
< p >
128
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
The character which when preceded by an escape character represents
the bell character.
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
"a"
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< / tr >
< tr >
< td >
2010-07-08 22:49:58 +00:00
< p >
129
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
The character which when preceded by an escape character represents
the form feed character.
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
"f"
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< / tr >
< tr >
< td >
2010-07-08 22:49:58 +00:00
< p >
130
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
The character which when preceded by an escape character represents
the newline character.
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
"n"
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< / tr >
< tr >
< td >
2010-07-08 22:49:58 +00:00
< p >
131
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
The character which when preceded by an escape character represents
the carriage return character.
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
"r"
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< / tr >
< tr >
< td >
2010-07-08 22:49:58 +00:00
< p >
132
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
The character which when preceded by an escape character represents
the tab character.
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
"t"
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< / tr >
< tr >
< td >
2010-07-08 22:49:58 +00:00
< p >
133
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
The character which when preceded by an escape character represents
the vertical tab character.
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
"v"
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< / tr >
< tr >
< td >
2010-07-08 22:49:58 +00:00
< p >
134
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
The character which when preceded by an escape character represents
the start of a hexadecimal character constant.
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
"x"
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< / tr >
< tr >
< td >
2010-07-08 22:49:58 +00:00
< p >
135
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
The character which when preceded by an escape character represents
the start of an ASCII escape character.
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
"c"
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< / tr >
< tr >
< td >
2010-07-08 22:49:58 +00:00
< p >
136
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
The colon character.
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
":"
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< / tr >
< tr >
< td >
2010-07-08 22:49:58 +00:00
< p >
137
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
The equals character.
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
"="
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< / tr >
< tr >
< td >
2010-07-08 22:49:58 +00:00
< p >
138
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
The character which when preceded by an escape character represents
the ASCII escape character.
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
"e"
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< / tr >
< tr >
< td >
2010-07-08 22:49:58 +00:00
< p >
139
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
The character which when preceded by an escape character represents
any lower case character.
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
"l"
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< / tr >
< tr >
< td >
2010-07-08 22:49:58 +00:00
< p >
140
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
The character which when preceded by an escape character represents
any non-lower case character.
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
"L"
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< / tr >
< tr >
< td >
2010-07-08 22:49:58 +00:00
< p >
141
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
The character which when preceded by an escape character represents
any upper case character.
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
"u"
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< / tr >
< tr >
< td >
2010-07-08 22:49:58 +00:00
< p >
142
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
The character which when preceded by an escape character represents
any non-upper case character.
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
"U"
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< / tr >
< tr >
< td >
2010-07-08 22:49:58 +00:00
< p >
143
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
The character which when preceded by an escape character represents
any space character.
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
"s"
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< / tr >
< tr >
< td >
2010-07-08 22:49:58 +00:00
< p >
144
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
The character which when preceded by an escape character represents
any non-space character.
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
"S"
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< / tr >
< tr >
< td >
2010-07-08 22:49:58 +00:00
< p >
145
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
The character which when preceded by an escape character represents
any digit character.
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
"d"
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< / tr >
< tr >
< td >
2010-07-08 22:49:58 +00:00
< p >
146
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
The character which when preceded by an escape character represents
any non-digit character.
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
"D"
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< / tr >
< tr >
< td >
2010-07-08 22:49:58 +00:00
< p >
147
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
The character which when preceded by an escape character represents
the end quote operator.
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
"E"
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< / tr >
< tr >
< td >
2010-07-08 22:49:58 +00:00
< p >
148
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
The character which when preceded by an escape character represents
the start quote operator.
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
"Q"
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< / tr >
< tr >
< td >
2010-07-08 22:49:58 +00:00
< p >
149
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
The character which when preceded by an escape character represents
a Unicode combining character sequence.
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
"X"
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< / tr >
< tr >
< td >
2010-07-08 22:49:58 +00:00
< p >
150
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
The character which when preceded by an escape character represents
any single character.
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
"C"
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< / tr >
< tr >
< td >
2010-07-08 22:49:58 +00:00
< p >
151
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
The character which when preceded by an escape character represents
end of buffer operator.
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
"Z"
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< / tr >
< tr >
< td >
2010-07-08 22:49:58 +00:00
< p >
152
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
The character which when preceded by an escape character represents
the continuation assertion.
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
"G"
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< / tr >
< tr >
< td >
2010-07-08 22:49:58 +00:00
< p >
153
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
2015-02-14 13:21:37 +00:00
The character which when preceded by (? indicates a zero width
2010-07-08 22:49:58 +00:00
negated forward lookahead assert.
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
!
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< / tr >
< / tbody >
< / table > < / div >
< p >
Custom error messages are loaded as follows:
< / p >
< div class = "informaltable" > < table class = "table" >
< colgroup >
< col >
< col >
< col >
< / colgroup >
< thead > < tr >
< th >
2010-07-08 22:49:58 +00:00
< p >
Message ID
< / p >
2007-06-08 09:23:23 +00:00
< / th >
< th >
2010-07-08 22:49:58 +00:00
< p >
Error message ID
< / p >
2007-06-08 09:23:23 +00:00
< / th >
< th >
2010-07-08 22:49:58 +00:00
< p >
Default string
< / p >
2007-06-08 09:23:23 +00:00
< / th >
< / tr > < / thead >
< tbody >
< tr >
< td >
2010-07-08 22:49:58 +00:00
< p >
201
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
REG_NOMATCH
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
"No match"
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< / tr >
< tr >
< td >
2010-07-08 22:49:58 +00:00
< p >
202
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
REG_BADPAT
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
"Invalid regular expression"
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< / tr >
< tr >
< td >
2010-07-08 22:49:58 +00:00
< p >
203
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
REG_ECOLLATE
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
"Invalid collation character"
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< / tr >
< tr >
< td >
2010-07-08 22:49:58 +00:00
< p >
204
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
REG_ECTYPE
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
"Invalid character class name"
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< / tr >
< tr >
< td >
2010-07-08 22:49:58 +00:00
< p >
205
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
REG_EESCAPE
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
"Trailing backslash"
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< / tr >
< tr >
< td >
2010-07-08 22:49:58 +00:00
< p >
206
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
REG_ESUBREG
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
"Invalid back reference"
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< / tr >
< tr >
< td >
2010-07-08 22:49:58 +00:00
< p >
207
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
REG_EBRACK
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
2015-10-15 13:27:45 +01:00
"Unmatched [ or [^"
2010-07-08 22:49:58 +00:00
< / p >
2007-06-08 09:23:23 +00:00
< / td >
2015-10-15 13:27:45 +01:00
< / tr >
< tr >
2007-06-08 09:23:23 +00:00
< td >
2010-07-08 22:49:58 +00:00
< p >
2015-10-15 13:27:45 +01:00
208
2010-07-08 22:49:58 +00:00
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
REG_EPAREN
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
"Unmatched ( or \("
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< / tr >
< tr >
< td >
2010-07-08 22:49:58 +00:00
< p >
209
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
REG_EBRACE
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
"Unmatched \{"
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< / tr >
< tr >
< td >
2010-07-08 22:49:58 +00:00
< p >
210
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
REG_BADBR
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
"Invalid content of \{\}"
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< / tr >
< tr >
< td >
2010-07-08 22:49:58 +00:00
< p >
211
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
REG_ERANGE
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
"Invalid range end"
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< / tr >
< tr >
< td >
2010-07-08 22:49:58 +00:00
< p >
212
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
REG_ESPACE
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
"Memory exhausted"
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< / tr >
< tr >
< td >
2010-07-08 22:49:58 +00:00
< p >
213
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
REG_BADRPT
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
"Invalid preceding regular expression"
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< / tr >
< tr >
< td >
2010-07-08 22:49:58 +00:00
< p >
214
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
REG_EEND
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
"Premature end of regular expression"
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< / tr >
< tr >
< td >
2010-07-08 22:49:58 +00:00
< p >
215
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
REG_ESIZE
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
"Regular expression too big"
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< / tr >
< tr >
< td >
2010-07-08 22:49:58 +00:00
< p >
216
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
REG_ERPAREN
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
"Unmatched ) or \)"
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< / tr >
< tr >
< td >
2010-07-08 22:49:58 +00:00
< p >
217
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
REG_EMPTY
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
"Empty expression"
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< / tr >
< tr >
< td >
2010-07-08 22:49:58 +00:00
< p >
218
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
REG_E_UNKNOWN
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
"Unknown error"
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< / tr >
< / tbody >
< / table > < / div >
< p >
Custom character class names are loaded as followed:
< / p >
< div class = "informaltable" > < table class = "table" >
< colgroup >
< col >
< col >
< col >
< / colgroup >
< thead > < tr >
< th >
2010-07-08 22:49:58 +00:00
< p >
Message ID
< / p >
2007-06-08 09:23:23 +00:00
< / th >
< th >
2010-07-08 22:49:58 +00:00
< p >
Description
< / p >
2007-06-08 09:23:23 +00:00
< / th >
< th >
2010-07-08 22:49:58 +00:00
< p >
Equivalent default class name
< / p >
2007-06-08 09:23:23 +00:00
< / th >
< / tr > < / thead >
< tbody >
< tr >
< td >
2010-07-08 22:49:58 +00:00
< p >
300
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
The character class name for alphanumeric characters.
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
"alnum"
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< / tr >
< tr >
< td >
2010-07-08 22:49:58 +00:00
< p >
301
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
The character class name for alphabetic characters.
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
"alpha"
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< / tr >
< tr >
< td >
2010-07-08 22:49:58 +00:00
< p >
302
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
The character class name for control characters.
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
"cntrl"
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< / tr >
< tr >
< td >
2010-07-08 22:49:58 +00:00
< p >
303
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
The character class name for digit characters.
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
"digit"
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< / tr >
< tr >
< td >
2010-07-08 22:49:58 +00:00
< p >
304
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
The character class name for graphics characters.
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
"graph"
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< / tr >
< tr >
< td >
2010-07-08 22:49:58 +00:00
< p >
305
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
The character class name for lower case characters.
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
"lower"
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< / tr >
< tr >
< td >
2010-07-08 22:49:58 +00:00
< p >
306
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
The character class name for printable characters.
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
"print"
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< / tr >
< tr >
< td >
2010-07-08 22:49:58 +00:00
< p >
307
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
The character class name for punctuation characters.
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
"punct"
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< / tr >
< tr >
< td >
2010-07-08 22:49:58 +00:00
< p >
308
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
The character class name for space characters.
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
"space"
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< / tr >
< tr >
< td >
2010-07-08 22:49:58 +00:00
< p >
309
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
The character class name for upper case characters.
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
"upper"
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< / tr >
< tr >
< td >
2010-07-08 22:49:58 +00:00
< p >
310
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
The character class name for hexadecimal characters.
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
"xdigit"
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< / tr >
< tr >
< td >
2010-07-08 22:49:58 +00:00
< p >
311
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
The character class name for blank characters.
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
"blank"
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< / tr >
< tr >
< td >
2010-07-08 22:49:58 +00:00
< p >
312
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
The character class name for word characters.
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
"word"
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< / tr >
< tr >
< td >
2010-07-08 22:49:58 +00:00
< p >
313
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
The character class name for Unicode characters.
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< td >
2010-07-08 22:49:58 +00:00
< p >
"unicode"
< / p >
2007-06-08 09:23:23 +00:00
< / td >
< / tr >
< / tbody >
< / table > < / div >
< p >
Finally, custom collating element names are loaded starting from message
id 400, and terminating when the first load thereafter fails. Each message
looks something like: "tagname string" where tagname is the name
used inside [[.tagname.]] and string is the actual text of the collating
element. Note that the value of collating element [[.zero.]] is used for
the conversion of strings to numbers - if you replace this with another value
then that will be used for string parsing - for example use the Unicode character
0x0660 for [[.zero.]] if you want to use Unicode Arabic-Indic digits in your
regular expressions in place of Latin digits.
< / p >
< p >
Note that the POSIX defined names for character classes and collating elements
are always available - even if custom names are defined, in contrast, custom
error messages, and custom syntax messages replace the default ones.
< / p >
< / div >
2024-03-23 19:03:45 +00:00
< div class = "copyright-footer" > Copyright © 1998-2013 John Maddock< p >
2007-11-07 03:23:31 +00:00
Distributed under the Boost Software License, Version 1.0. (See accompanying
file LICENSE_1_0.txt or copy at < a href = "http://www.boost.org/LICENSE_1_0.txt" target = "_top" > http://www.boost.org/LICENSE_1_0.txt< / a > )
2007-12-14 10:11:21 +00:00
< / p >
2024-03-23 19:03:45 +00:00
< / div >
2007-06-08 09:23:23 +00:00
< hr >
< div class = "spirit-nav" >
2017-08-01 18:01:46 +01:00
< a accesskey = "p" href = "headers.html" > < img src = "../../../../../../doc/src/images/prev.png" alt = "Prev" > < / a > < a accesskey = "u" href = "../background.html" > < img src = "../../../../../../doc/src/images/up.png" alt = "Up" > < / a > < a accesskey = "h" href = "../../index.html" > < img src = "../../../../../../doc/src/images/home.png" alt = "Home" > < / a > < a accesskey = "n" href = "thread_safety.html" > < img src = "../../../../../../doc/src/images/next.png" alt = "Next" > < / a >
2007-06-08 09:23:23 +00:00
< / div >
< / body >
< / html >