///////////////////////////////////////////////////////////////////////////////
// Name: src/common/regex.cpp
// Purpose: regular expression matching
-// Author: Karsten Ballüder and Vadim Zeitlin
+// Author: Karsten Ballueder and Vadim Zeitlin
// Modified by:
// Created: 13.07.01
// RCS-ID: $Id$
-// Copyright: (c) 2000 Karsten Ballüder <ballueder@gmx.net>
+// Copyright: (c) 2000 Karsten Ballueder <ballueder@gmx.net>
// 2001 Vadim Zeitlin <vadim@wxwindows.org>
// Licence: wxWindows licence
///////////////////////////////////////////////////////////////////////////////
// translate our flags to regcomp() ones
int flagsRE = 0;
if ( !(flags & wxRE_BASIC) )
+ {
#ifndef WX_NO_REGEX_ADVANCED
if (flags & wxRE_ADVANCED)
flagsRE |= REG_ADVANCED;
else
#endif
flagsRE |= REG_EXTENDED;
+ }
if ( flags & wxRE_ICASE )
flagsRE |= REG_ICASE;
if ( flags & wxRE_NOSUB )
re_registers *matches,
int eflags)
{
- regex_t *pattern = wx_const_cast(regex_t*, preg);
+ regex_t *pattern = const_cast<regex_t*>(preg);
pattern->not_bol = (eflags & REG_NOTBOL) != 0;
pattern->not_eol = (eflags & REG_NOTEOL) != 0;
// note that "^" shouldn't match after the first call to Matches() so we
// use wxRE_NOTBOL to prevent it from happening
while ( (!maxMatches || countRepl < maxMatches) &&
+ Matches(
#ifndef WXREGEX_CONVERT_TO_MB
- Matches(textstr + matchStart,
+ textstr + matchStart,
#else
- Matches(textstr.data() + matchStart,
+ textstr.data() + matchStart,
#endif
countRepl ? wxRE_NOTBOL : 0
WXREGEX_IF_NEED_LEN(textlen - matchStart)) )