00001 /* 00002 * This file is part of the Standard Portable Library (SPL). 00003 * 00004 * SPL is free software: you can redistribute it and/or modify 00005 * it under the terms of the GNU General Public License as published by 00006 * the Free Software Foundation, either version 3 of the License, or 00007 * (at your option) any later version. 00008 * 00009 * SPL is distributed in the hope that it will be useful, 00010 * but WITHOUT ANY WARRANTY; without even the implied warranty of 00011 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00012 * GNU General Public License for more details. 00013 * 00014 * You should have received a copy of the GNU General Public License 00015 * along with SPL. If not, see <http://www.gnu.org/licenses/>. 00016 */ 00017 #ifndef _regexoptions_h 00018 #define _regexoptions_h 00019 00020 #include <spl/text/pcreposix.h> 00021 00030 class RegexOptions 00031 { 00032 public: 00033 typedef enum 00034 { 00035 NONE = 0, 00036 IGNORE_CASE = REG_ICASE, //< Ignore case 00037 MULTILINE = REG_NEWLINE, //< Anchor ^ and $ to lines instead of the entire 00038 EXPLICIT_CAPTURE = REG_NOSUB, //< Report only success/fail in regexec() 00039 SINGLE_LINE = REG_DOTALL, //< If this modifier is set, a dot metacharacter in the pattern matches all characters, including newlines. Without it, newlines are excluded. 00040 NOT_BOL = REG_NOTBOL, //< Start of string is not begining of line (BOL) 00041 NOT_EOL = REG_NOTEOL, //< End of string is not the end of a line (EOL) 00042 NOT_EMPTY = REG_NOTEMPTY //< Don't know what this does 00043 } Options; 00044 }; 00045 00048 #endif