Subject: Re: [Boost-bugs] [Boost C++ Libraries] #698: The case insensitive modifier doesn't work
From: Boost C++ Libraries (noreply_at_[hidden])
Date: 2011-08-25 10:37:47
#698: The case insensitive modifier doesn't work
---------------------+------------------------------------------------------
Reporter: nobody | Owner: johnmaddock
Type: Bugs | Status: closed
Milestone: | Component: regex
Version: None | Severity: Problem
Resolution: None | Keywords:
---------------------+------------------------------------------------------
Changes (by Stephen Wassell <stephen.wassell@â¦>):
* severity: => Problem
Comment:
This bug still exists as described in the original post. I've tested with
Boost 1.45 but I believe it's still there in 1.47.
The regular expression "(?i)[dh]og" should match on both "HOG" and "dog"
but in fact only matches on "dog". Please see the attached sample code
boostbug698.cpp.
I've fixed the bug as follows: at boost/regex/v4/basic_regex_creator.hpp
line 1216 change m_icase to l_icase.
{{{
< if(&c != re_is_set_member(&c, &c + 1,
static_cast<re_set_long<mask_type>*>(state), *m_pdata, m_icase))
> if(&c != re_is_set_member(&c, &c + 1,
static_cast<re_set_long<mask_type>*>(state), *m_pdata, l_icase))
}}}
-- Ticket URL: <https://svn.boost.org/trac/boost/ticket/698#comment:3> Boost C++ Libraries <http://www.boost.org/> Boost provides free peer-reviewed portable C++ source libraries.
This archive was generated by hypermail 2.1.7 : 2017-02-16 18:50:07 UTC