Files
GopherGate/target/doc/regex_automata/util/captures/index.html
2026-02-26 12:00:21 -05:00

28 lines
6.9 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="Provides types for dealing with capturing groups."><title>regex_automata::util::captures - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-6b053e98.ttf.woff2,FiraSans-Italic-81dc35de.woff2,FiraSans-Regular-0fe48ade.woff2,FiraSans-MediumItalic-ccf7e434.woff2,FiraSans-Medium-e1aa3f0a.woff2,SourceCodePro-Regular-8badfe75.ttf.woff2,SourceCodePro-Semibold-aa29a496.ttf.woff2".split(",").map(f=>`<link rel="preload" as="font" type="font/woff2"href="../../../static.files/${f}">`).join(""))</script><link rel="stylesheet" href="../../../static.files/normalize-9960930a.css"><link rel="stylesheet" href="../../../static.files/rustdoc-ca0dd0c4.css"><meta name="rustdoc-vars" data-root-path="../../../" data-static-root-path="../../../static.files/" data-current-crate="regex_automata" data-themes="" data-resource-suffix="" data-rustdoc-version="1.93.1 (01f6ddf75 2026-02-11) (Arch Linux rust 1:1.93.1-1)" data-channel="1.93.1" data-search-js="search-9e2438ea.js" data-stringdex-js="stringdex-a3946164.js" data-settings-js="settings-c38705f0.js" ><script src="../../../static.files/storage-e2aeef58.js"></script><script defer src="../sidebar-items.js"></script><script defer src="../../../static.files/main-a410ff4d.js"></script><noscript><link rel="stylesheet" href="../../../static.files/noscript-263c88ec.css"></noscript><link rel="alternate icon" type="image/png" href="../../../static.files/favicon-32x32-eab170b8.png"><link rel="icon" type="image/svg+xml" href="../../../static.files/favicon-044be391.svg"></head><body class="rustdoc mod"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><rustdoc-topbar><h2><a href="#">Module captures</a></h2></rustdoc-topbar><nav class="sidebar"><div class="sidebar-crate"><h2><a href="../../../regex_automata/index.html">regex_<wbr>automata</a><span class="version">0.4.14</span></h2></div><div class="sidebar-elems"><section id="rustdoc-toc"><h2 class="location"><a href="#">Module captures</a></h2><h3><a href="#">Sections</a></h3><ul class="block top-toc"><li><a href="#overview" title="Overview">Overview</a></li></ul><h3><a href="#structs">Module Items</a></h3><ul class="block"><li><a href="#structs" title="Structs">Structs</a></li></ul></section><div id="rustdoc-modnav"><h2><a href="../index.html">In regex_<wbr>automata::<wbr>util</a></h2></div></div></nav><div class="sidebar-resizer" title="Drag to resize sidebar"></div><main><div class="width-limiter"><section id="main-content" class="content"><div class="main-heading"><div class="rustdoc-breadcrumbs"><a href="../../index.html">regex_automata</a>::<wbr><a href="../index.html">util</a></div><h1>Module <span>captures</span>&nbsp;<button id="copy-path" title="Copy item path to clipboard">Copy item path</button></h1><rustdoc-toolbar></rustdoc-toolbar><span class="sub-heading"><a class="src" href="../../../src/regex_automata/util/captures.rs.html#1-2551">Source</a> </span></div><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Provides types for dealing with capturing groups.</p>
<p>Capturing groups refer to sub-patterns of regexes that some regex engines can
report matching offsets for. For example, matching <code>[a-z]([0-9]+)</code> against
<code>a789</code> would give <code>a789</code> as the overall match (for the implicit capturing group
at index <code>0</code>) and <code>789</code> as the match for the capturing group <code>([0-9]+)</code> (an
explicit capturing group at index <code>1</code>).</p>
<p>Not all regex engines can report match offsets for capturing groups. Indeed,
to a first approximation, regex engines that can report capturing group offsets
tend to be quite a bit slower than regex engines that cant. This is because
tracking capturing groups at search time usually requires more “power” that
in turn adds overhead.</p>
<p>Other regex implementations might call capturing groups “submatches.”</p>
<h2 id="overview"><a class="doc-anchor" href="#overview">§</a>Overview</h2>
<p>The main types in this module are:</p>
<ul>
<li><a href="struct.Captures.html" title="struct regex_automata::util::captures::Captures"><code>Captures</code></a> records the capturing group offsets found during a search. It
provides convenience routines for looking up capturing group offsets by either
index or name.</li>
<li><a href="struct.GroupInfo.html" title="struct regex_automata::util::captures::GroupInfo"><code>GroupInfo</code></a> records the mapping between capturing groups and “slots,”
where the latter are how capturing groups are recorded during a regex search.
This also keeps a mapping from capturing group name to index, and capture
group index to name. A <code>GroupInfo</code> is used by <code>Captures</code> internally to
provide a convenient API. It is unlikely that youll use a <code>GroupInfo</code>
directly, but for example, if youve compiled an Thompson NFA, then you can use
<a href="../../nfa/thompson/struct.NFA.html#method.group_info" title="method regex_automata::nfa::thompson::NFA::group_info"><code>thompson::NFA::group_info</code></a> to get its
underlying <code>GroupInfo</code>.</li>
</ul>
</div></details><h2 id="structs" class="section-header">Structs<a href="#structs" class="anchor">§</a></h2><dl class="item-table"><dt><a class="struct" href="struct.Captures.html" title="struct regex_automata::util::captures::Captures">Captures</a></dt><dd>The span offsets of capturing groups after a match has been found.</dd><dt><a class="struct" href="struct.CapturesPatternIter.html" title="struct regex_automata::util::captures::CapturesPatternIter">Captures<wbr>Pattern<wbr>Iter</a></dt><dd>An iterator over all capturing groups in a <code>Captures</code> value.</dd><dt><a class="struct" href="struct.GroupInfo.html" title="struct regex_automata::util::captures::GroupInfo">Group<wbr>Info</a></dt><dd>Represents information about capturing groups in a compiled regex.</dd><dt><a class="struct" href="struct.GroupInfoAllNames.html" title="struct regex_automata::util::captures::GroupInfoAllNames">Group<wbr>Info<wbr>AllNames</a></dt><dd>An iterator over capturing groups and their names for a <code>GroupInfo</code>.</dd><dt><a class="struct" href="struct.GroupInfoError.html" title="struct regex_automata::util::captures::GroupInfoError">Group<wbr>Info<wbr>Error</a></dt><dd>An error that may occur when building a <code>GroupInfo</code>.</dd><dt><a class="struct" href="struct.GroupInfoPatternNames.html" title="struct regex_automata::util::captures::GroupInfoPatternNames">Group<wbr>Info<wbr>Pattern<wbr>Names</a></dt><dd>An iterator over capturing groups and their names for a specific pattern.</dd></dl></section></div></main></body></html>