|
@@ -18,47 +18,42 @@ More details about its use is documented in `nrex.hpp`
|
|
|
|
|
|
Currently supported features:
|
|
|
* Capturing `()` and non-capturing `(?:)` groups
|
|
|
- * Any character `.`
|
|
|
+ * Any character `.` (includes newlines)
|
|
|
* Shorthand caracter classes `\w\W\s\S\d\D`
|
|
|
- * User-defined character classes such as `[A-Za-z]`
|
|
|
+ * POSIX character classes such as `[[:alnum:]]`
|
|
|
+ * Bracket expressions such as `[A-Za-z]`
|
|
|
* Simple quantifiers `?`, `*` and `+`
|
|
|
* Range quantifiers `{0,1}`
|
|
|
* Lazy (non-greedy) quantifiers `*?`
|
|
|
* Begining `^` and end `$` anchors
|
|
|
+ * Word boundaries `\b`
|
|
|
* Alternation `|`
|
|
|
- * Backreferences `\1` to `\99`
|
|
|
-
|
|
|
-To do list:
|
|
|
+ * ASCII `\xFF` code points
|
|
|
* Unicode `\uFFFF` code points
|
|
|
+ * Positive `(?=)` and negative `(?!)` lookahead
|
|
|
+ * Positive `(?<=)` and negative `(?<!)` lookbehind (fixed length and no alternations)
|
|
|
+ * Backreferences `\1` to `\9` (with option to expand to `\99`)
|
|
|
|
|
|
## License
|
|
|
|
|
|
Copyright (c) 2015, Zher Huei Lee
|
|
|
All rights reserved.
|
|
|
|
|
|
-Redistribution and use in source and binary forms, with or without
|
|
|
-modification, are permitted provided that the following conditions are
|
|
|
-met:
|
|
|
-
|
|
|
- 1. Redistributions of source code must retain the above copyright
|
|
|
- notice, this list of conditions and the following disclaimer.
|
|
|
-
|
|
|
- 2. Redistributions in binary form must reproduce the above copyright
|
|
|
- notice, this list of conditions and the following disclaimer in the
|
|
|
- documentation and/or other materials provided with the distribution.
|
|
|
-
|
|
|
- 3. Neither the name of the copyright holder nor the names of its
|
|
|
- contributors may be used to endorse or promote products derived from
|
|
|
- this software without specific prior written permission.
|
|
|
-
|
|
|
-THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS
|
|
|
-IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
|
|
|
-TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
|
|
|
-PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
|
|
|
-HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
|
|
|
-SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED
|
|
|
-TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
|
|
|
-PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
|
|
|
-LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
|
|
|
-NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
|
|
|
-SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
|
|
+This software is provided 'as-is', without any express or implied
|
|
|
+warranty. In no event will the authors be held liable for any damages
|
|
|
+arising from the use of this software.
|
|
|
+
|
|
|
+Permission is granted to anyone to use this software for any purpose,
|
|
|
+including commercial applications, and to alter it and redistribute it
|
|
|
+freely, subject to the following restrictions:
|
|
|
+
|
|
|
+ 1. The origin of this software must not be misrepresented; you must not
|
|
|
+ claim that you wrote the original software. If you use this software
|
|
|
+ in a product, an acknowledgment in the product documentation would
|
|
|
+ be appreciated but is not required.
|
|
|
+
|
|
|
+ 2. Altered source versions must be plainly marked as such, and must not
|
|
|
+ be misrepresented as being the original software.
|
|
|
+
|
|
|
+ 3. This notice may not be removed or altered from any source
|
|
|
+ distribution.
|