誰かが2つの違いを説明できますか?今すぐ学ぶ方が良いでしょうか?知識はどのようにして1つから他のものに移り、その逆も同様です。Boost.RegexとC++ 11 Regex
答えて
boost regexライブラリはC++ 0xにしていますので、徐々にboostから削除されると思います。ただし、C++ 0xをサポートしていないコンパイラでも引き続き使用できるので、boostを使用すると便利です。それは本当にあなた次第です。
はい、ただし、簡単な 's/boost ::/std ::/g'でRegexをC++ 11正規表現に変換する正規表現ベースのプログラム? –
@Rob:これは、あなたがBoost.RegexのICUサポートを利用しているかどうかによって決まると思います。 – ildjarn
大きな違いの1つは、C++ 11では正規表現のPerl構文が提供されていないことです。したがって、Perl構文を使用する傾向がある場合は、Boost :: Regexライブラリを使用する必要があります。
はい、正規表現のためのPerl構文があります:ECMAScript正規表現があり、ECMAScript正規表現はPerl正規表現と同じですhttp://ecma-international.org/ecma-262/5.1/#sec-15.10 – BenjaminB
@Ubiquitéあなたは正しくありません。あなたが提供したリンクは、「モデル化された」と言います。
@PatrickNiedzielski:あなたは間違いなく、残念ながらBoost.Regexは 'perl'を' ECMAScript'と同等と定義しています。http://www.boost.org/doc/libs/1_53_0/libs/regex/doc/html/boost_regex/ref/ syntax_option_type/syntax_option_type_perl.html。 – kennytm
少なくともVisual Studio 2013では、これと関連する名前(cmatch、regex_match)は両方の名前空間で同じです。彼らはまた、同じ(または同様の)インターフェイスを持っています。
名前空間を変更するだけで、同じコードが警告とエラーなしに別の正規表現でコンパイルされます。それと同じように動作するはずです。
P.S.私はstd :: regexがC++ 11の一部であり、boost :: regexがサードパーティのライブラリであるので、これを好むでしょう。私は数年後、boostはboost :: regexのサポートを削除すると確信しています。
- 1. C++ 11 RegEx、non-greedy
- 2. C++ 11 Regex Capture Groups名前で
- 3. C++ 11/regex - 正確な文字列を検索する、エスケープ
- 4. C++ 11 Regexはキャプチャグループ識別子を見つける
- 5. C++ 11とC++ 14のconstexpr
- 6. javaとC++ 11 volatile
- 7. C++ 11 foreach構文とカスタムイテレータ
- 8. C++ 11プロセス間アトミックとmutex
- 9. Visual Studio 2012 __cplusplusとC++ 11
- 10. C++ 11のエイリアスとテンプレートテンプレート
- 11. SDLとC++の11スレッド
- 12. C++ 11とC++ 03のライブラリ互換性
- 13. C++ 11 regex_replaceの奇妙な行動
- 14. C++ 11ファイルシステム(VS2012)
- 15. vxworksのC++ 11
- 16. はC++ 11
- 17. C++ 11オペレーター ""
- 18. C++ 11ファイルストリーム
- 19. C++ 11マルチスレッドマージソート
- 20. はC++ 11
- 21. C++ 11バージョン
- 22. C++ 11 std :: array
- 23. intrusive_ptr in C++ 11
- 24. はC++ 11
- 25. C lang:セグメンテーションフォールト11
- 26. セグメンテーションフォールト:11 C++エラー
- 27. C++ 11リンカエラーVS17
- 28. セグメンテーションフォルト:11 in C++
- 29. ブースト:: C++ 11
- 30. SublimeLinter with C++ 11
標準的な方法を学ぶことは決して悪いことではありません。 –
GCCによって完全に実装されていないので、標準ライブラリC++ 11 Regexには注意してください:http://stackoverflow.com/questions/4716680/c0x-regex-in-gcc –