std::regex_traits::lookup_collatename

来自cppreference.com
< cpp‎ | regex‎ | regex traits

 
 
正则表达式库
原文:
Classes
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里
basic_regex(C++11)
sub_match(C++11)
match_results(C++11)
算法
原文:
Algorithms
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里
regex_match(C++11)
regex_search(C++11)
regex_replace(C++11)
迭代器
原文:
Iterators
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里
regex_iterator(C++11)
regex_token_iterator(C++11)
例外
原文:
Exceptions
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里
regex_error(C++11)
性状
原文:
Traits
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里
regex_traits(C++11)
常量
原文:
Constants
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里
syntax_option_type(C++11)
match_flag_type(C++11)
error_type(C++11)
 
std::regex_traits
成员函数
原文:
Member Functions
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里
regex_traits::regex_traits
regex_traits::length
regex_traits::translate
regex_traits::translate_nocase
regex_traits::transform
regex_traits::transform_primary
regex_traits::lookup_collatename
regex_traits::lookup_classname
regex_traits::isctype
regex_traits::value
regex_traits::imbue
regex_traits::getloc
 
template< class ForwardIt >
string_type lookup_collatename( ForwardIt first, ForwardIt last ) const;
如果该字符序列[first, last)表示在当前充满的区域设置一个有效的校对元素的名称,返回用于校对元素的名称。否则,返回一个空字符串.
原文:
If the character sequence [first, last) represents the name of a valid collating element in the currently imbued locale, returns the name of that collating element. Otherwise, returns an empty string.
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里
集合元素的符号[..]POSIX正则表达式之间。例如,[.a.]匹配字符a在C语言环境。 [.tilde.]~在C语言环境相匹配的字符为好。 [.ch.]相匹配的有向图ch在捷克区域设置,但会产生错误代码std::regex_error在大多数其他语言环境的std::regex_constants::error_collate.
原文:
Collating elements are the symbols found in POSIX regular expressions between [. and .]. For example, [.a.] matches the character a in the C locale. [.tilde.] matches the character ~ in the C locale as well. [.ch.] matches the digraph ch in Czech locale, but generates std::regex_error with error code std::regex_constants::error_collate in most other locales.
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里

[编辑] 参数

first, last -
一对迭代器确定的字符序列,它表示一个集合元素的名称
原文:
a pair of iterators which determines the sequence of characters that represents a collating element name
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里
类型要求
-
ForwardIt 必须满足 ForwardIterator 的要求。

[编辑] 返回值

作为一个字符串命名的排序元素的代表性.
原文:
The representation of the named collating element as a character string.
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里

[编辑] 示例

#include <iostream>
#include <string>
#include <regex>
 
struct noisy_traits : std::regex_traits<char> {
 
    template< class Iter >
    string_type lookup_collatename( Iter first, Iter last ) const {
        string_type result = regex_traits::lookup_collatename(first, last);
        std::cout << "regex_traits<>::lookup_collatename(\""
                  << string_type(first, last)
                  << "\") returns \"" << result << "\"\n";
        return result;
    }
};
 
int main()
{
    std::string str = "z|}a"; // C locale collation order: x,y,z,{,|,},~
    std::basic_regex<char, noisy_traits> re("[x-[.tilde.]]*a", std::regex::basic);
    std::cout << std::boolalpha << std::regex_match(str, re) << '\n';
}

输出:

regex_traits<>::lookup_collatename("tilde") returns "~"
true