Função regex_match
Corresponde exatamente a uma expressão regular.
template<class BidIt, class Alloc, class Elem, class RXtraits, class Alloc2>
bool regex_match(BidIt first, Bidit last,
match_results<BidIt, Alloc>& match,
const basic_regex<Elem, RXtraits, Alloc2>& re,
match_flag_type flags = match_default);
template<class BidIt, class Elem, class RXtraits, class Alloc2>
bool regex_match(BidIt first, Bidit last,
const basic_regex<Elem, RXtraits, Alloc2>& re,
match_flag_type flags = match_default);
template<class Elem, class Alloc, class RXtraits, class Alloc2>
bool regex_match(const Elem *ptr,
match_results<const Elem*, Alloc>& match,
const basic_regex<Elem, RXtraits, Alloc2>& re,
match_flag_type flags = match_default);
template<class Elem, class RXtraits, class Alloc2>
bool regex_match(const Elem *ptr,
const basic_regex<Elem, RXtraits, Alloc2>& re,
match_flag_type flags = match_default);
template<class IOtraits, class IOalloc, class Alloc, class Elem, class RXtraits, class Alloc2>
bool regex_match(const basic_string<Elem, IOtraits, IOalloc>& str,
match_results<typename basic_string<Elem, IOtraits, IOalloc>::const_iterator, Alloc>& match,
const basic_regex<Elem, RXtraits, Alloc2>& re,
match_flag_type flags = match_default);
template<class IOtraits, class IOalloc, class Elem, class RXtraits, class Alloc2>
bool regex_match(const basic_string<Elem, IOtraits, IOalloc>& str,
const basic_regex<Elem, RXtraits, Alloc2>& re,
match_flag_type flags = match_default);
Parâmetros
BidIt
O tipo de iterador para subcorrespondentes.Alloc
A classe de alocador de resultados de correspondência.Elem
O tipo de elementos para coincidir.RXtraits
Classe de características de elementos.Alloc2
A classe do alocador de expressão regular.IOtraits
A classe de características de seqüência de caracteres.IOalloc
A classe do alocador de seqüência de caracteres.flags
Sinalizadores de correspondências.first
Início da sequência para fazer a correspondência.last
participante da sequência para fazer a correspondência.match
Os resultados de correspondência.ptr
Ponteiro para o início da sequência para corresponder.re
A expressão regular para corresponder.str
Seqüência de caracteres para fazer a correspondência.
Comentários
Cada modelo de função retorna true somente se sua sequência operando coincide exatamente com a sua expressão regular argumento re. As funções que levam um match_results objeto conjunto seus membros para refletir se a correspondência foi bem-sucedida e, se tiver, o que os diversos capturar grupos na expressão regular capturados.
Exemplo
// std_tr1__regex__regex_match.cpp
// compile with: /EHsc
#include <regex>
#include <iostream>
int main()
{
const char *first = "abc";
const char *last = first + strlen(first);
std::tr1::cmatch mr;
std::tr1::regex rx("abc");
std::tr1::regex_constants::match_flag_type fl =
std::tr1::regex_constants::match_default;
std::cout << "match(f, f+1, \"abc\") == " << std::boolalpha
<< regex_match(first, first + 1, rx, fl) << std::endl;
std::cout << "match(f, l, \"abc\") == " << std::boolalpha
<< regex_match(first, last, mr, rx) << std::endl;
std::cout << " matched: \"" << mr.str() << "\"" << std::endl;
std::cout << "match(\"a\", \"abc\") == " << std::boolalpha
<< regex_match("a", rx) << std::endl;
std::cout << "match(\"abc\", \"abc\") == " << std::boolalpha
<< regex_match("abc", mr, rx) << std::endl;
std::cout << " matched: \"" << mr.str() << "\"" << std::endl;
std::cout << "match(string, \"abc\") == " << std::boolalpha
<< regex_match(std::string("a"), rx) << std::endl;
std::string str("abc");
std::tr1::match_results<std::string::const_iterator> mr2;
std::cout << "match(string, \"abc\") == " << std::boolalpha
<< regex_match(str, mr2, rx) << std::endl;
std::cout << " matched: \"" << mr2.str() << "\"" << std::endl;
return (0);
}
match(f, f+1, "abc") == false match(f, l, "abc") == true matched: "abc" match("a", "abc") == false match("abc", "abc") == true matched: "abc" match(string, "abc") == false match(string, "abc") == true matched: "abc"
Requisitos
Cabeçalho:<regex>
Namespace: std::tr1