2011-01-18 12 views

答えて

0

std::tr1::regexがincompeleteです:正規表現は、現在++/TR1グラムに実装されていません。 std::regexにバグがあります。

boost::regexを考えてください。

+0

私はブーストを使用することはできません、あなたは他の提案がありますか? – gln

1

私がのstd :: tr1を::正規表現パッケージを知らないが、それは正規表現::ブーストをもとに実際にある場合、これらの正規表現変換するために些細なことする必要があります

"\\s*nameserver\\s+(?<address>.*)" 
"\\s*search\\s+(?<domain>.*)" 

あなたを正規表現を含む文字列を作成するときにバックスラッシュをエスケープする必要があります。それ以外に、これら2つの正規表現は、boost :: regexのPerl互換エンジンが処理できない機能を使用していません。あなたはグラム++、使用している場合、それは、価値がある何のため

+0

IIRC彼らはregexのためのboostパッケージを使用しています。http://www.boost.org/doc/libs/1_45_0/libs/regex/doc/html/index.html –

+1

@Uwe Keim:情報をありがとう!その場合、(少なくともPerl互換エンジンを使用している場合は)名前付きキャプチャグループを処理できる必要があります。だからおそらく、バックスラッシュをエスケープする必要があります... –