Boost logo

Boost :

From: Ross Smith (rosss_at_[hidden])
Date: 2003-08-07 17:04:58

George A. Heintzelman wrote:
>>Given that I have a string 's' from somewhere, I'd like to create a
>>regular expression where some part must match that string. The problem
>>is, the 's' could contain characters that have a special meaning in
>>regular expressions. Is there some support function that can provide an
>>escaped version of 's'? Something that transforms "my.*string" into
>>"my\.\*string"? If there isn't, would it be possible/easy to provide one?
> Second that request. I just had a need for this, though I wound up
> ignoring the problem rather than fixing it...

There must be something in the air; I just had a need for this too. My
quick-and-dirty solution was to simply replace every non-alphanumeric
character with a hex escape sequence (\xNN).

Having it just add escapes to a list of special characters wouldn't work
as a general solution, because the list of characters depends on the
flags passed to the regex functions. Of course there are settings where
my hex-escape solution won't work either. I don't think a general
solution is possible without making it part of the library; it needs
access to the innards of the regex objects in order to know the exact
syntax they recognise.

Ross Smith ...................... Pharos Systems, Auckland, New Zealand
            "Remember when we told you there was no future?
                    Well, this is it." -- Blank Reg

Boost list run by bdawes at, gregod at, cpdaniel at, john at