std::wstring
を正規表現で使用するために任意のエスケープ方法を教えてください。たとえば、you owe me $
をyou owe me \$
に変換しますか?文字列を正規表現のリテラルに変換する方法
私のシナリオ:単語全体を検索するのにstd::tr1::wregex
を使いたいです。だから私のような何かやりたい:私はそれが賢いか、最も効率的だということを知らない
std::wstring RegexEscape(const std::wstring& inp)
{
return ?????
}
bool ContainsWholeWord(const std::wstring& phrase, const std::wstring& word)
{
std::tr1::wregex regex(std::wstring(L"\\b") + RegexEscape(word) + L"\\b");
return std::tr1::regex_match(phrase, regex);
}