195 lines
11 KiB
HTML
195 lines
11 KiB
HTML
<!DOCTYPE html>
|
|
<html lang="zh" dir="ltr" class="client-nojs" xmlns="http://www.w3.org/1999/xhtml" xml:lang="zh">
|
|
<head><meta http-equiv="x-ua-compatible" content="ie=edge">
|
|
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
|
<title>std::regex_traits</title>
|
|
<link rel="stylesheet" href="ext.css" />
|
|
<link rel="stylesheet" href="site_modules.css" />
|
|
</head>
|
|
<body class="mediawiki ltr sitedir-ltr ns-0 ns-subject page-cpp_regex_regex_traits skin-cppreference2 action-view cpp-navbar">
|
|
<div id="cpp-content-base">
|
|
<div id="content"><a id="top"></a>
|
|
<h1 id="firstHeading" class="firstHeading"><span style="font-size:0.7em; line-height:130%">std::</span>regex_traits</h1>
|
|
<div id="bodyContent">
|
|
<div id="contentSub"><span class="subpages">< <a href="cpp.html">cpp</a>‎ | <a href="cpp-regex.html">regex</a></span></div>
|
|
<div id="mw-content-text" lang="zh" dir="ltr" class="mw-content-ltr" xml:lang="zh">
|
|
<table class="t-dcl-begin">
|
|
<tbody>
|
|
<tr class="t-dsc-header">
|
|
<td>
|
|
<div>定义于头文件 <code><a href="cpp-header-regex.html"><regex></a></code></div>
|
|
</td>
|
|
<td></td>
|
|
<td></td>
|
|
</tr>
|
|
<tr class="t-dcl t-since-cxx11">
|
|
<td>
|
|
<div><span class="mw-geshi cpp source-cpp"><span class="kw1">template</span><span class="sy1"><</span> <span class="kw1">class</span> CharT <span class="sy1">></span><br />
|
|
<span class="kw1">class</span> regex_traits<span class="sy4">;</span></span></div>
|
|
</td>
|
|
<td class="t-dcl-nopad"></td>
|
|
<td><span class="t-mark-rev t-since-cxx11">(C++11 起)</span></td>
|
|
</tr>
|
|
<tr class="t-dcl-sep">
|
|
<td></td>
|
|
<td></td>
|
|
<td></td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
<p>类型特性模板 <code>regex_traits</code> 将类型集合及在类型 <code>CharT</code> 上的操作所需的函数提供给 <span class="t-lc"><a href="cpp-regex-basic_regex.html">std::basic_regex</a></span> 。</p>
|
|
<p>因为大多数 regex 操作是对本地环境敏感的(设置 <span class="t-lc"><a href="cpp-regex-syntax_option_type.html">std::regex_constants::collate</a></span> 标志时),从而 regex_traits 类典型地保有一个作为私有成员的 <span class="t-lc"><a href="cpp-locale-locale.html">std::locale</a></span> 实例。</p>
|
|
<h3><span class="mw-headline" id=".E6.A0.87.E5.87.86.E7.89.B9.E5.8C.96">标准特化</span></h3>
|
|
<p>标准库定义 <code>std::regex_traits</code> 的二个特化:</p>
|
|
<table class="t-dsc-begin">
|
|
<tr class="t-dsc">
|
|
<td colspan="2"><code>std::regex_traits<char></code></td>
|
|
</tr>
|
|
<tr class="t-dsc">
|
|
<td colspan="2"><code>std::regex_traits<wchar_t></code></td>
|
|
</tr>
|
|
</table>
|
|
<p>这些特化使得 <span class="t-c"><span class="mw-geshi cpp source-cpp"><a href="cpp-regex-basic_regex.html"><span class="kw1999">std::<span class="me2">basic_regex</span></span></a><span class="sy1"><</span><span class="kw4">char</span><span class="sy1">></span></span></span> (别名 <span class="t-lc"><a href="cpp-regex-basic_regex.html">std::regex</a></span> )和 <span class="t-c"><span class="mw-geshi cpp source-cpp"><a href="cpp-regex-basic_regex.html"><span class="kw1999">std::<span class="me2">basic_regex</span></span></a><span class="sy1"><</span><span class="kw4">wchar_t</span><span class="sy1">></span></span></span> (别名 <span class="t-lc"><a href="cpp-regex-basic_regex.html">std::wregex</a></span> )可用。为将 <span class="t-lc"><a href="cpp-regex-basic_regex.html">std::basic_regex</a></span> 用于其他字符类型(例如 <span class="t-c"><span class="mw-geshi cpp source-cpp"><span class="kw4">char32_t</span></span></span> ),必须使用用户提供的特性类。</p>
|
|
<h3><span class="mw-headline" id=".E6.88.90.E5.91.98.E7.B1.BB.E5.9E.8B">成员类型</span></h3>
|
|
<table class="t-dsc-begin">
|
|
<tr class="t-dsc-hitem">
|
|
<td>类型</td>
|
|
<td>定义</td>
|
|
</tr>
|
|
<tr class="t-dsc">
|
|
<td><code>char_type</code></td>
|
|
<td><code>CharT</code></td>
|
|
</tr>
|
|
<tr class="t-dsc">
|
|
<td><code>string_type</code></td>
|
|
<td><span class="t-c"><span class="mw-geshi cpp source-cpp"><a href="cpp-string-basic_string.html"><span class="kw1228">std::<span class="me2">basic_string</span></span></a><span class="sy1"><</span>CharT<span class="sy1">></span></span></span></td>
|
|
</tr>
|
|
<tr class="t-dsc">
|
|
<td><code>locale_type</code></td>
|
|
<td>用于正则表达式中本地化行为的本地环境。必须为<a href="cpp-named_req-CopyConstructible.html"><span style="font-style:italic">可复制构造</span> <span style="font-family: Georgia, 'DejaVu Serif', serif; font-style:italic">(CopyConstructible)</span></a></td>
|
|
</tr>
|
|
<tr class="t-dsc">
|
|
<td><code>char_class_type</code></td>
|
|
<td>表示字符分类,并足以保有 <code>lookup_classname</code> 所返回的实现指定集合。必须是<a href="cpp-named_req-BitmaskType.html"><span style="font-style:italic">位掩码类型</span> <span style="font-family: Georgia, 'DejaVu Serif', serif; font-style:italic">(BitmaskType)</span></a> 。</td>
|
|
</tr>
|
|
</table>
|
|
<h3><span class="mw-headline" id=".E6.88.90.E5.91.98.E5.87.BD.E6.95.B0">成员函数</span></h3>
|
|
<table class="t-dsc-begin">
|
|
<tr class="t-dsc">
|
|
<td>
|
|
<div class="t-dsc-member-div t-dsc-member-nobold-div">
|
|
<div><a href="cpp-regex-regex_traits-regex_traits.html"><span class="t-lines"><span>(构造函数)</span></span></a></div>
|
|
</div>
|
|
</td>
|
|
<td>构造 regex_traits 对象<br />
|
|
<span class="t-mark">(公开成员函数)</span></td>
|
|
</tr>
|
|
<tr class="t-dsc">
|
|
<td>
|
|
<div class="t-dsc-member-div">
|
|
<div><a href="cpp-regex-regex_traits-length.html"><span class="t-lines"><span>length</span></span></a></div>
|
|
<div><span class="t-lines"><span><span class="t-cmark">[静态]</span></span></span></div>
|
|
</div>
|
|
</td>
|
|
<td>计算空终止字符串的长度<br />
|
|
<span class="t-mark">(公开静态成员函数)</span></td>
|
|
</tr>
|
|
<tr class="t-dsc">
|
|
<td>
|
|
<div class="t-dsc-member-div">
|
|
<div><a href="cpp-regex-regex_traits-translate.html"><span class="t-lines"><span>translate</span></span></a></div>
|
|
</div>
|
|
</td>
|
|
<td>确定字符的等价关键<br />
|
|
<span class="t-mark">(公开成员函数)</span></td>
|
|
</tr>
|
|
<tr class="t-dsc">
|
|
<td>
|
|
<div class="t-dsc-member-div">
|
|
<div><a href="cpp-regex-regex_traits-translate_nocase.html"><span class="t-lines"><span>translate_nocase</span></span></a></div>
|
|
</div>
|
|
</td>
|
|
<td>决定字符的无关大小写的等价关键<br />
|
|
<span class="t-mark">(公开成员函数)</span></td>
|
|
</tr>
|
|
<tr class="t-dsc">
|
|
<td>
|
|
<div class="t-dsc-member-div">
|
|
<div><a href="cpp-regex-regex_traits-transform.html"><span class="t-lines"><span>transform</span></span></a></div>
|
|
</div>
|
|
</td>
|
|
<td>确定给定字符串的搜索关键,用于提供对照顺序<br />
|
|
<span class="t-mark">(公开成员函数)</span></td>
|
|
</tr>
|
|
<tr class="t-dsc">
|
|
<td>
|
|
<div class="t-dsc-member-div">
|
|
<div><a href="cpp-regex-regex_traits-transform_primary.html"><span class="t-lines"><span>transform_primary</span></span></a></div>
|
|
</div>
|
|
</td>
|
|
<td>确定字符序列的初等搜索关键,用于确定等价类<br />
|
|
<span class="t-mark">(公开成员函数)</span></td>
|
|
</tr>
|
|
<tr class="t-dsc">
|
|
<td>
|
|
<div class="t-dsc-member-div">
|
|
<div><a href="cpp-regex-regex_traits-lookup_collatename.html"><span class="t-lines"><span>lookup_collatename</span></span></a></div>
|
|
</div>
|
|
</td>
|
|
<td>以名获得对照元素<br />
|
|
<span class="t-mark">(公开成员函数)</span></td>
|
|
</tr>
|
|
<tr class="t-dsc">
|
|
<td>
|
|
<div class="t-dsc-member-div">
|
|
<div><a href="cpp-regex-regex_traits-lookup_classname.html"><span class="t-lines"><span>lookup_classname</span></span></a></div>
|
|
</div>
|
|
</td>
|
|
<td>以名获得字符类<br />
|
|
<span class="t-mark">(公开成员函数)</span></td>
|
|
</tr>
|
|
<tr class="t-dsc">
|
|
<td>
|
|
<div class="t-dsc-member-div">
|
|
<div><a href="cpp-regex-regex_traits-isctype.html"><span class="t-lines"><span>isctype</span></span></a></div>
|
|
</div>
|
|
</td>
|
|
<td>指示本地化字符类的从属关系<br />
|
|
<span class="t-mark">(公开成员函数)</span></td>
|
|
</tr>
|
|
<tr class="t-dsc">
|
|
<td>
|
|
<div class="t-dsc-member-div">
|
|
<div><a href="cpp-regex-regex_traits-value.html"><span class="t-lines"><span>value</span></span></a></div>
|
|
</div>
|
|
</td>
|
|
<td>把代表数位的序列翻译成整数值<br />
|
|
<span class="t-mark">(公开成员函数)</span></td>
|
|
</tr>
|
|
<tr class="t-dsc">
|
|
<td>
|
|
<div class="t-dsc-member-div">
|
|
<div><a href="cpp-regex-regex_traits-imbue.html"><span class="t-lines"><span>imbue</span></span></a></div>
|
|
</div>
|
|
</td>
|
|
<td>设置本地环境<br />
|
|
<span class="t-mark">(公开成员函数)</span></td>
|
|
</tr>
|
|
<tr class="t-dsc">
|
|
<td>
|
|
<div class="t-dsc-member-div">
|
|
<div><a href="cpp-regex-regex_traits-getloc.html"><span class="t-lines"><span>getloc</span></span></a></div>
|
|
</div>
|
|
</td>
|
|
<td>获得本地环境<br />
|
|
<span class="t-mark">(公开成员函数)</span></td>
|
|
</tr>
|
|
</table>
|
|
</div>
|
|
<div class="visualClear"></div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</body>
|
|
</html>
|