Boost.Regexでは、正規表現を検索するために、3つの異なる機能を提供します
1. regex_match
#include <ブースト/ regex.hpp> の#include < ストリング > の#include <iostreamの> int型のmain(){ のstd :: 文字列 S = " ライブラリブースト" 。 ブースト::正規表現のexprを(" \\ + W + S \\ \\ W " )。 std :: coutの <<はstd :: boolalpha <<ブースト:: regex_match(S、expr)は<< はstd ::てendl; リターン0 ; }
後押し:: regex_match()を正規表現で文字列を比較します。これは、式が完全な文字列と一致する場合にのみtrueを返します。
2. regex_search
#include <ブースト/ regex.hpp> の#include < ストリング > の#include <iostreamの> int型のmain(){ のstd :: 文字列 S = " ライブラリブースト" 。 ブースト::(正規表現のexpr " + W \\()\\ S(\\ + W)を" )。 後押し::何をsmatch。もし(ブースト:: regex_search(S、何、式expr)){ のstd :: COUT <<何[ 0 ] << はstd :: ENDL。 std :: coutの <<何[ 1 ] << " _ " <<何[ 2 ] << はstd :: endl; } リターン 0 ; }
3. regex_replaceの
#include <ブースト/ regex.hpp> の#include < ストリング > の#include <iostreamの> int型のmain(){ のstd :: 文字列 S = " ライブラリブースト" 。 後押し::正規表現式exprを(" \\ sの" ); std :: 文字列 FMT(" _ " ); std :: coutの <<ブースト:: regex_replaceの(S、式expr、FMT)<< はstd ::てendl; リターン0 ; }