Classe basic_regex
Quebra uma expressão regular.
template<class Elem,
class RXtraits = regex_traits<Elem>,
class basic_regex {
public:
basic_regex();
explicit basic_regex(const Elem *ptr,
flag_type flags = ECMAScript);
basic_regex(const Elem *ptr, size_type len,
flag_type flags = ECMAScript);
basic_regex(const basic_regex& right);
template<class STtraits, class STalloc>
explicit basic_regex(const basic_string<Elem, STtraits, STalloc>& str,
flag_type flags = ECMAScript);
template<class InIt>
explicit basic_regex(InIt first, InIt last,
flag_type flags = ECMAScript);
basic_regex& operator=(const basic_regex& right);
basic_regex& operator=(const Elem *ptr);
template<class STtraits, class STalloc>
basic_regex& operator=(const basic_string<Elem, STtraits, STalloc>& str);
basic_regex& assign(const basic_regex& right);
basic_regex& assign(const Elem *ptr,
flag_type flags = ECMAScript);
basic_regex& assign(const Elem *ptr, size_type len,
flag_type flags = ECMAScript);
template<class STtraits, class STalloc>
basic_regex& assign(const basic_string<Elem, STtraits, STalloc>& str,
flag_type flags = ECMAScript);
template<class InIt>
basic_regex& assign(InIt first, InIt last,
flag_type flags = ECMAScript);
locale_type imbue(locale_type loc);
locale_type getloc() const;
void swap(basic_regex& other) throw();
unsigned mark_count() const;
flag_type flags() const;
typedef Elem value_type;
typedef regex_constants::syntax_option_type flag_type;
typedef typename RXtraits::locale_type locale_type;
static const flag_type icase = regex_constants::icase;
static const flag_type nosubs = regex_constants::nosubs;
static const flag_type optimize = regex_constants::optimize;
static const flag_type collate = regex_constants::collate;
static const flag_type ECMAScript = regex_constants::ECMAScript;
static const flag_type basic = regex_constants::basic;
static const flag_type extended = regex_constants::extended;
static const flag_type awk = regex_constants::awk;
static const flag_type grep = regex_constants::grep;
static const flag_type egrep = regex_constants::egrep;
private:
RXtraits traits; // exposition only
};
Parâmetros
Elem
O tipo de elementos para coincidir.RXtraits
Classe de características de elementos.
Comentários
A classe de modelo descreve um objeto que contém uma expressão regular.Objetos desta classe de modelo podem ser passados para o modelo funções Função regex_match, Função regex_search, e Função regex_replace, juntamente com argumentos de seqüência de caracteres de texto adequado, para procurar por texto que coincida com a expressão regular. A biblioteca de TR1 fornece dois especializações em dessa classe de modelo com o tipo de definições de Regex TypeDef para elementos do tipo char, e TypeDef wregex para elementos do tipo wchar_t.
O argumento de modelo RXtraits Descreve várias propriedades importantes da sintaxe de expressões regulares que ofereça suporte a classe de modelo. Uma classe que especifica essas características de expressão regular deve ter a mesma interface externa sistema autônomo um objeto de classe de modelo Classe regex_traits.
Algumas funções têm uma sequência de operando que define uma expressão regular.Você pode especificar como uma sequência de operando várias maneiras:
ptr --uma sequência terminada por caractere nulo (sistema autônomo uma sequência de C para Elem do tipo char) começando no ptr (que não deve ser um ponteiro nulo), onde o elemento de terminação é o valor value_type() e não faz parte da sequência do operando
ptr, count --uma sequência de count elementos começando no ptr (que não deve ser um ponteiro nulo)
str --a sequência especificada pela basic_string objeto str
first, last --uma sequência de elementos, delimitados pelos iteradores first e last, no intervalo [first, last)
right --o basic_regex objeto right
Essas funções de membro também têm um argumento flags várias opções para a interpretação da expressão regular bem como os descritos por que especifica o RXtraits Digite.
Requisitos
Cabeçalho:<regex>
Namespace: std::tr1