Subject: Re: [Boost-bugs] [Boost C++ Libraries] #698: The case insensitive modifier doesn't work when followed by a character class
From: Boost C++ Libraries (noreply_at_[hidden])
Date: 2011-10-10 16:42:42
#698: The case insensitive modifier doesn't work when followed by a character
class
---------------------------+------------------------------------------------
Reporter: nobody | Owner: johnmaddock
Type: Bugs | Status: reopened
Milestone: | Component: regex
Version: Boost 1.45.0 | Severity: Problem
Resolution: | Keywords:
---------------------------+------------------------------------------------
Old description:
> {{{
> My name is Florin Trofin (ftrofin at _adobe_ dot com) and I work for
> Adobe Systems. We are using boost/regex 1.33.1 in one of our projects
> and we've encountered the following bug:
>
> The case insensitive modifier is supposed to make the string comparison
> case insensitive from the place at which it is encountered first till
> the end. In view of this, if we have "ABC abc aCb" as the text in which
> we will be doing search and if we have find string as "(?i)[bc]" then
> the expectation is that b/B/c/C will be found. But only b/c is found. If
> we have "(?i)a[bc]" as find string then ab/ac/AB/Ab/AC/Ac are found as
> expected. The only place which is having problem is when we specify
> character class[] immediately after case insensitive modifier "(?i)".
>
> We also have issues regarding character equivalence on Mac. Japanese
> character equivalence in general is not working i.e. if we have [[=x=]]
> where x is a Japanese character in hiragana or katakana then the
> equivalence is not matching correctly. Please let me know if you want me
> to open a separate bug on this issue.
>
> If you need more info please let me know. Thx!
>
> }}}
New description:
{{{
My name is Florin Trofin (ftrofin at _adobe_ dot com) and I work for
Adobe Systems. We are using boost/regex 1.33.1 in one of our projects
and we've encountered the following bug:
The case insensitive modifier is supposed to make the string comparison
case insensitive from the place at which it is encountered first till
the end. In view of this, if we have "ABC abc aCb" as the text in which
we will be doing search and if we have find string as "(?i)[bc]" then
the expectation is that b/B/c/C will be found. But only b/c is found. If
we have "(?i)a[bc]" as find string then ab/ac/AB/Ab/AC/Ac are found as
expected. The only place which is having problem is when we specify
character class[] immediately after case insensitive modifier "(?i)".
We also have issues regarding character equivalence on Mac. Japanese
character equivalence in general is not working i.e. if we have [[=x=]]
where x is a Japanese character in hiragana or katakana then the
equivalence is not matching correctly. Please let me know if you want me
to open a separate bug on this issue.
If you need more info please let me know. Thx!
}}}
-- Comment (by johnmaddock): Confirmed. -- Ticket URL: <https://svn.boost.org/trac/boost/ticket/698#comment:6> 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