blob: e2cfce1fc62d7808f32da077a7139f91f66077fb [file] [log] [blame]
<!DOCTYPE html>
<!--[if IE]><![endif]-->
<html>
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<title>Class RegExp
| Apache Lucene.NET 4.8.0-beta00013 Documentation </title>
<meta name="viewport" content="width=device-width">
<meta name="title" content="Class RegExp
| Apache Lucene.NET 4.8.0-beta00013 Documentation ">
<meta name="generator" content="docfx 2.56.2.0">
<link rel="shortcut icon" href="https://lucenenet.apache.org/docs/4.8.0-beta00009/logo/favicon.ico">
<link rel="stylesheet" href="https://lucenenet.apache.org/docs/4.8.0-beta00009/styles/docfx.vendor.css">
<link rel="stylesheet" href="https://lucenenet.apache.org/docs/4.8.0-beta00009/styles/docfx.css">
<link rel="stylesheet" href="https://lucenenet.apache.org/docs/4.8.0-beta00009/styles/main.css">
<meta property="docfx:navrel" content="toc.html">
<meta property="docfx:tocrel" content="core/toc.html">
<meta property="docfx:rel" content="https://lucenenet.apache.org/docs/4.8.0-beta00009/">
</head>
<body data-spy="scroll" data-target="#affix" data-offset="120">
<span id="forkongithub"><a href="https://github.com/apache/lucenenet" target="_blank">Fork me on GitHub</a></span>
<div id="wrapper">
<header>
<nav id="autocollapse" class="navbar ng-scope" role="navigation">
<div class="container">
<div class="navbar-header">
<button type="button" class="navbar-toggle" data-toggle="collapse" data-target="#navbar">
<span class="sr-only">Toggle navigation</span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
<a class="navbar-brand" href="/">
<img id="logo" class="svg" src="https://lucenenet.apache.org/docs/4.8.0-beta00009/logo/lucene-net-color.png" alt="">
</a>
</div>
<div class="collapse navbar-collapse" id="navbar">
<form class="navbar-form navbar-right" role="search" id="search">
<div class="form-group">
<input type="text" class="form-control" id="search-query" placeholder="Search" autocomplete="off">
</div>
</form>
</div>
</div>
</nav>
<div class="subnav navbar navbar-default">
<div class="container hide-when-search">
<ul class="level0 breadcrumb">
<li>
<a href="https://lucenenet.apache.org/docs/4.8.0-beta00009/">API</a>
<span id="breadcrumb">
<ul class="breadcrumb">
<li></li>
</ul>
</span>
</li>
</ul>
</div>
</div>
</header>
<div class="container body-content">
<div id="search-results">
<div class="search-list"></div>
<div class="sr-items">
<p><i class="glyphicon glyphicon-refresh index-loading"></i></p>
</div>
<ul id="pagination"></ul>
</div>
</div>
<div role="main" class="container body-content hide-when-search">
<div class="sidenav hide-when-search">
<a class="btn toc-toggle collapse" data-toggle="collapse" href="#sidetoggle" aria-expanded="false" aria-controls="sidetoggle">Show / Hide Table of Contents</a>
<div class="sidetoggle collapse" id="sidetoggle">
<div id="sidetoc"></div>
</div>
</div>
<div class="article row grid-right">
<div class="col-md-10">
<article class="content wrap" id="_content" data-uid="Lucene.Net.Util.Automaton.RegExp">
<h1 id="Lucene_Net_Util_Automaton_RegExp" data-uid="Lucene.Net.Util.Automaton.RegExp" class="text-break">Class RegExp
</h1>
<div class="markdown level0 summary"><p>Regular Expression extension to <a class="xref" href="Lucene.Net.Util.Automaton.Automaton.html">Automaton</a>.
<p>
Regular expressions are built from the following abstract syntax:
<p>
<table><tbody><tr><td><em>regexp</em>::=<em>unionexp</em></td><td></td></tr><tr><td>|</td><td></td></tr><tr><td><em>unionexp</em>::=<em>interexp</em> <tt><strong>|</strong></tt> <em>unionexp</em>(union)</td><td></td></tr><tr><td>|<em>interexp</em></td><td></td></tr><tr><td><em>interexp</em>::=<em>concatexp</em> <tt><strong>&amp;</strong></tt> <em>interexp</em>(intersection)<small>[OPTIONAL]</small></td><td></td></tr><tr><td>|<em>concatexp</em></td><td></td></tr><tr><td><em>concatexp</em>::=<em>repeatexp</em> <em>concatexp</em>(concatenation)</td><td></td></tr><tr><td>|<em>repeatexp</em></td><td></td></tr><tr><td><em>repeatexp</em>::=<em>repeatexp</em> <tt><strong>?</strong></tt>(zero or one occurrence)</td><td></td></tr><tr><td>|<em>repeatexp</em> <tt><strong>*</strong></tt>(zero or more occurrences)</td><td></td></tr><tr><td>|<em>repeatexp</em> <tt><strong>+</strong></tt>(one or more occurrences)</td><td></td></tr><tr><td>|<em>repeatexp</em> <tt><strong>{</strong><em>n</em><strong>}</strong></tt>(<tt><em>n</em></tt> occurrences)</td><td></td></tr><tr><td>|<em>repeatexp</em> <tt><strong>{</strong><em>n</em><strong>,}</strong></tt>(<tt><em>n</em></tt> or more occurrences)</td><td></td></tr><tr><td>|<em>repeatexp</em> <tt><strong>{</strong><em>n</em><strong>,</strong><em>m</em><strong>}</strong></tt>(<tt><em>n</em></tt> to <tt><em>m</em></tt> occurrences, including both)</td><td></td></tr><tr><td>|<em>complexp</em></td><td></td></tr><tr><td><em>complexp</em>::=<tt><strong>~</strong></tt> <em>complexp</em>(complement)<small>[OPTIONAL]</small></td><td></td></tr><tr><td>|<em>charclassexp</em></td><td></td></tr><tr><td><em>charclassexp</em>::=<tt><strong>[</strong></tt> <em>charclasses</em> <tt><strong>]</strong></tt>(character class)</td><td></td></tr><tr><td>|<tt><strong>[^</strong></tt> <em>charclasses</em> <tt><strong>]</strong></tt>(negated character class)</td><td></td></tr><tr><td>|<em>simpleexp</em></td><td></td></tr><tr><td><em>charclasses</em>::=<em>charclass</em> <em>charclasses</em></td><td></td></tr><tr><td>|<em>charclass</em></td><td></td></tr><tr><td><em>charclass</em>::=<em>charexp</em> <tt><strong>-</strong></tt> <em>charexp</em>(character range, including end-points)</td><td></td></tr><tr><td>|<em>charexp</em></td><td></td></tr><tr><td><em>simpleexp</em>::=<em>charexp</em></td><td></td></tr><tr><td>|<tt><strong>.</strong></tt>(any single character)</td><td></td></tr><tr><td>|<tt><strong>#</strong></tt>(the empty language)<small>[OPTIONAL]</small></td><td></td></tr><tr><td>|<tt><strong>@</strong></tt>(any string)<small>[OPTIONAL]</small></td><td></td></tr><tr><td>|<tt><strong>&quot;</strong></tt> &lt;Unicode string without double-quotes&gt; <tt><strong>&quot;</strong></tt>(a string)</td><td></td></tr><tr><td>|<tt><strong>(</strong></tt> <tt><strong>)</strong></tt>(the empty string)</td><td></td></tr><tr><td>|<tt><strong>(</strong></tt> <em>unionexp</em> <tt><strong>)</strong></tt>(precedence override)</td><td></td></tr><tr><td>|<tt><strong>&lt;</strong></tt> &lt;identifier&gt; <tt><strong>&gt;</strong></tt>(named automaton)<small>[OPTIONAL]</small></td><td></td></tr><tr><td>|<tt><strong>&lt;</strong><em>n</em>-<em>m</em><strong>&gt;</strong></tt>(numerical interval)<small>[OPTIONAL]</small></td><td></td></tr><tr><td><em>charexp</em>::=&lt;Unicode character&gt;(a single non-reserved character)</td><td></td></tr><tr><td>|<tt><strong>&lt;/strong&gt;</strong></tt> &lt;Unicode character&gt; (a single character)</td><td></td></tr></tbody></table></p>
<p><p>
The productions marked <small>[OPTIONAL]</small> are only allowed if
specified by the syntax flags passed to the <a class="xref" href="Lucene.Net.Util.Automaton.RegExp.html">RegExp</a> constructor.
The reserved characters used in the (enabled) syntax must be escaped with
backslash (<code>&lt;/code&gt;) or double-quotes (<code>&quot;...&quot;</code>). (In
contrast to other regexp syntaxes, this is required also in character
classes.) Be aware that dash (<code>-</code>) has a special meaning in
<em>charclass</em> expressions. An identifier is a string not containing right
angle bracket (<code>&gt;</code>) or dash (<code>-</code>). Numerical
intervals are specified by non-negative decimal integers and include both end
points, and if <code>n</code> and <code>m</code> have the same number
of digits, then the conforming strings must have that length (i.e. prefixed
by 0&apos;s).
<p>
<div class="lucene-block lucene-experimental">This is a Lucene.NET EXPERIMENTAL API, use at your own risk</div></code></div>
<div class="markdown level0 conceptual"></div>
<div class="inheritance">
<h5>Inheritance</h5>
<div class="level0"><span class="xref">System.Object</span></div>
<div class="level1"><span class="xref">RegExp</span></div>
</div>
<div class="inheritedMembers">
<h5>Inherited Members</h5>
<div>
<span class="xref">System.Object.Equals(System.Object)</span>
</div>
<div>
<span class="xref">System.Object.Equals(System.Object, System.Object)</span>
</div>
<div>
<span class="xref">System.Object.GetHashCode()</span>
</div>
<div>
<span class="xref">System.Object.GetType()</span>
</div>
<div>
<span class="xref">System.Object.MemberwiseClone()</span>
</div>
<div>
<span class="xref">System.Object.ReferenceEquals(System.Object, System.Object)</span>
</div>
</div>
<h6><strong>Namespace</strong>: <a class="xref" href="Lucene.Net.Util.Automaton.html">Lucene.Net.Util.Automaton</a></h6>
<h6><strong>Assembly</strong>: Lucene.Net.dll</h6>
<h5 id="Lucene_Net_Util_Automaton_RegExp_syntax">Syntax</h5>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public class RegExp</code></pre>
</div>
<h3 id="constructors">Constructors
</h3>
<span class="small pull-right mobile-hide">
<span class="divider">|</span>
<a href="https://github.com/apache/lucenenet/new/docs/4.8.0-beta00013/websites/apidocs/apiSpec/new?filename=Lucene_Net_Util_Automaton_RegExp__ctor_System_String_.md&amp;value=---%0Auid%3A%20Lucene.Net.Util.Automaton.RegExp.%23ctor(System.String)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
</span>
<span class="small pull-right mobile-hide">
<a href="https://github.com/NightOwl888/lucenenet/blob/fix/apidocs-layout/src/Lucene.Net/Util/Automaton/RegExp.cs/#L419">View Source</a>
</span>
<a id="Lucene_Net_Util_Automaton_RegExp__ctor_" data-uid="Lucene.Net.Util.Automaton.RegExp.#ctor*"></a>
<h4 id="Lucene_Net_Util_Automaton_RegExp__ctor_System_String_" data-uid="Lucene.Net.Util.Automaton.RegExp.#ctor(System.String)">RegExp(String)</h4>
<div class="markdown level1 summary"><p>Constructs new <a class="xref" href="Lucene.Net.Util.Automaton.RegExp.html">RegExp</a> from a string. Same as
<code>RegExp(s, RegExpSyntax.ALL)</code>.</p>
</div>
<div class="markdown level1 conceptual"></div>
<h5 class="decalaration">Declaration</h5>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public RegExp(string s)</code></pre>
</div>
<h5 class="parameters">Parameters</h5>
<table class="table table-bordered table-striped table-condensed">
<thead>
<tr>
<th>Type</th>
<th>Name</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td><span class="xref">System.String</span></td>
<td><span class="parametername">s</span></td>
<td><p>Regexp string. </p>
</td>
</tr>
</tbody>
</table>
<h5 class="exceptions">Exceptions</h5>
<table class="table table-bordered table-striped table-condensed">
<thead>
<tr>
<th>Type</th>
<th>Condition</th>
</tr>
</thead>
<tbody>
<tr>
<td><span class="xref">System.ArgumentException</span></td>
<td><p>If an error occured while parsing the
regular expression. </p>
</td>
</tr>
</tbody>
</table>
<span class="small pull-right mobile-hide">
<span class="divider">|</span>
<a href="https://github.com/apache/lucenenet/new/docs/4.8.0-beta00013/websites/apidocs/apiSpec/new?filename=Lucene_Net_Util_Automaton_RegExp__ctor_System_String_Lucene_Net_Util_Automaton_RegExpSyntax_.md&amp;value=---%0Auid%3A%20Lucene.Net.Util.Automaton.RegExp.%23ctor(System.String%2CLucene.Net.Util.Automaton.RegExpSyntax)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
</span>
<span class="small pull-right mobile-hide">
<a href="https://github.com/NightOwl888/lucenenet/blob/fix/apidocs-layout/src/Lucene.Net/Util/Automaton/RegExp.cs/#L432">View Source</a>
</span>
<a id="Lucene_Net_Util_Automaton_RegExp__ctor_" data-uid="Lucene.Net.Util.Automaton.RegExp.#ctor*"></a>
<h4 id="Lucene_Net_Util_Automaton_RegExp__ctor_System_String_Lucene_Net_Util_Automaton_RegExpSyntax_" data-uid="Lucene.Net.Util.Automaton.RegExp.#ctor(System.String,Lucene.Net.Util.Automaton.RegExpSyntax)">RegExp(String, RegExpSyntax)</h4>
<div class="markdown level1 summary"><p>Constructs new <a class="xref" href="Lucene.Net.Util.Automaton.RegExp.html">RegExp</a> from a string.</p>
</div>
<div class="markdown level1 conceptual"></div>
<h5 class="decalaration">Declaration</h5>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public RegExp(string s, RegExpSyntax syntax_flags)</code></pre>
</div>
<h5 class="parameters">Parameters</h5>
<table class="table table-bordered table-striped table-condensed">
<thead>
<tr>
<th>Type</th>
<th>Name</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td><span class="xref">System.String</span></td>
<td><span class="parametername">s</span></td>
<td><p>Regexp string. </p>
</td>
</tr>
<tr>
<td><a class="xref" href="Lucene.Net.Util.Automaton.RegExpSyntax.html">RegExpSyntax</a></td>
<td><span class="parametername">syntax_flags</span></td>
<td><p>Boolean &apos;or&apos; of optional <a class="xref" href="Lucene.Net.Util.Automaton.RegExpSyntax.html">RegExpSyntax</a> constructs to be
enabled. </p>
</td>
</tr>
</tbody>
</table>
<h5 class="exceptions">Exceptions</h5>
<table class="table table-bordered table-striped table-condensed">
<thead>
<tr>
<th>Type</th>
<th>Condition</th>
</tr>
</thead>
<tbody>
<tr>
<td><span class="xref">System.ArgumentException</span></td>
<td><p>If an error occured while parsing the
regular expression </p>
</td>
</tr>
</tbody>
</table>
<h3 id="methods">Methods
</h3>
<span class="small pull-right mobile-hide">
<span class="divider">|</span>
<a href="https://github.com/apache/lucenenet/new/docs/4.8.0-beta00013/websites/apidocs/apiSpec/new?filename=Lucene_Net_Util_Automaton_RegExp_GetIdentifiers.md&amp;value=---%0Auid%3A%20Lucene.Net.Util.Automaton.RegExp.GetIdentifiers%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
</span>
<span class="small pull-right mobile-hide">
<a href="https://github.com/NightOwl888/lucenenet/blob/fix/apidocs-layout/src/Lucene.Net/Util/Automaton/RegExp.cs/#L771">View Source</a>
</span>
<a id="Lucene_Net_Util_Automaton_RegExp_GetIdentifiers_" data-uid="Lucene.Net.Util.Automaton.RegExp.GetIdentifiers*"></a>
<h4 id="Lucene_Net_Util_Automaton_RegExp_GetIdentifiers" data-uid="Lucene.Net.Util.Automaton.RegExp.GetIdentifiers">GetIdentifiers()</h4>
<div class="markdown level1 summary"><p>Returns set of automaton identifiers that occur in this regular expression.</p>
</div>
<div class="markdown level1 conceptual"></div>
<h5 class="decalaration">Declaration</h5>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public virtual ISet&lt;string&gt; GetIdentifiers()</code></pre>
</div>
<h5 class="returns">Returns</h5>
<table class="table table-bordered table-striped table-condensed">
<thead>
<tr>
<th>Type</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td><span class="xref">System.Collections.Generic.ISet</span>&lt;<span class="xref">System.String</span>&gt;</td>
<td></td>
</tr>
</tbody>
</table>
<span class="small pull-right mobile-hide">
<span class="divider">|</span>
<a href="https://github.com/apache/lucenenet/new/docs/4.8.0-beta00013/websites/apidocs/apiSpec/new?filename=Lucene_Net_Util_Automaton_RegExp_SetAllowMutate_System_Boolean_.md&amp;value=---%0Auid%3A%20Lucene.Net.Util.Automaton.RegExp.SetAllowMutate(System.Boolean)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
</span>
<span class="small pull-right mobile-hide">
<a href="https://github.com/NightOwl888/lucenenet/blob/fix/apidocs-layout/src/Lucene.Net/Util/Automaton/RegExp.cs/#L508">View Source</a>
</span>
<a id="Lucene_Net_Util_Automaton_RegExp_SetAllowMutate_" data-uid="Lucene.Net.Util.Automaton.RegExp.SetAllowMutate*"></a>
<h4 id="Lucene_Net_Util_Automaton_RegExp_SetAllowMutate_System_Boolean_" data-uid="Lucene.Net.Util.Automaton.RegExp.SetAllowMutate(System.Boolean)">SetAllowMutate(Boolean)</h4>
<div class="markdown level1 summary"><p>Sets or resets allow mutate flag. If this flag is set, then automata
construction uses mutable automata, which is slightly faster but not thread
safe. By default, the flag is not set.</p>
</div>
<div class="markdown level1 conceptual"></div>
<h5 class="decalaration">Declaration</h5>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public virtual bool SetAllowMutate(bool flag)</code></pre>
</div>
<h5 class="parameters">Parameters</h5>
<table class="table table-bordered table-striped table-condensed">
<thead>
<tr>
<th>Type</th>
<th>Name</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td><span class="xref">System.Boolean</span></td>
<td><span class="parametername">flag</span></td>
<td><p>If <code>true</code>, the flag is set </p>
</td>
</tr>
</tbody>
</table>
<h5 class="returns">Returns</h5>
<table class="table table-bordered table-striped table-condensed">
<thead>
<tr>
<th>Type</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td><span class="xref">System.Boolean</span></td>
<td><p>Previous value of the flag. </p>
</td>
</tr>
</tbody>
</table>
<span class="small pull-right mobile-hide">
<span class="divider">|</span>
<a href="https://github.com/apache/lucenenet/new/docs/4.8.0-beta00013/websites/apidocs/apiSpec/new?filename=Lucene_Net_Util_Automaton_RegExp_ToAutomaton.md&amp;value=---%0Auid%3A%20Lucene.Net.Util.Automaton.RegExp.ToAutomaton%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
</span>
<span class="small pull-right mobile-hide">
<a href="https://github.com/NightOwl888/lucenenet/blob/fix/apidocs-layout/src/Lucene.Net/Util/Automaton/RegExp.cs/#L466">View Source</a>
</span>
<a id="Lucene_Net_Util_Automaton_RegExp_ToAutomaton_" data-uid="Lucene.Net.Util.Automaton.RegExp.ToAutomaton*"></a>
<h4 id="Lucene_Net_Util_Automaton_RegExp_ToAutomaton" data-uid="Lucene.Net.Util.Automaton.RegExp.ToAutomaton">ToAutomaton()</h4>
<div class="markdown level1 summary"><p>Constructs new <a class="xref" href="Lucene.Net.Util.Automaton.Automaton.html">Automaton</a> from this <a class="xref" href="Lucene.Net.Util.Automaton.RegExp.html">RegExp</a>. Same
as <code>ToAutomaton(null)</code> (empty automaton map).</p>
</div>
<div class="markdown level1 conceptual"></div>
<h5 class="decalaration">Declaration</h5>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public virtual Automaton ToAutomaton()</code></pre>
</div>
<h5 class="returns">Returns</h5>
<table class="table table-bordered table-striped table-condensed">
<thead>
<tr>
<th>Type</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td><a class="xref" href="Lucene.Net.Util.Automaton.Automaton.html">Automaton</a></td>
<td></td>
</tr>
</tbody>
</table>
<span class="small pull-right mobile-hide">
<span class="divider">|</span>
<a href="https://github.com/apache/lucenenet/new/docs/4.8.0-beta00013/websites/apidocs/apiSpec/new?filename=Lucene_Net_Util_Automaton_RegExp_ToAutomaton_Lucene_Net_Util_Automaton_IAutomatonProvider_.md&amp;value=---%0Auid%3A%20Lucene.Net.Util.Automaton.RegExp.ToAutomaton(Lucene.Net.Util.Automaton.IAutomatonProvider)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
</span>
<span class="small pull-right mobile-hide">
<a href="https://github.com/NightOwl888/lucenenet/blob/fix/apidocs-layout/src/Lucene.Net/Util/Automaton/RegExp.cs/#L480">View Source</a>
</span>
<a id="Lucene_Net_Util_Automaton_RegExp_ToAutomaton_" data-uid="Lucene.Net.Util.Automaton.RegExp.ToAutomaton*"></a>
<h4 id="Lucene_Net_Util_Automaton_RegExp_ToAutomaton_Lucene_Net_Util_Automaton_IAutomatonProvider_" data-uid="Lucene.Net.Util.Automaton.RegExp.ToAutomaton(Lucene.Net.Util.Automaton.IAutomatonProvider)">ToAutomaton(IAutomatonProvider)</h4>
<div class="markdown level1 summary"><p>Constructs new <a class="xref" href="Lucene.Net.Util.Automaton.Automaton.html">Automaton</a> from this <a class="xref" href="Lucene.Net.Util.Automaton.RegExp.html">RegExp</a>. The
constructed automaton is minimal and deterministic and has no transitions
to dead states.</p>
</div>
<div class="markdown level1 conceptual"></div>
<h5 class="decalaration">Declaration</h5>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public virtual Automaton ToAutomaton(IAutomatonProvider automaton_provider)</code></pre>
</div>
<h5 class="parameters">Parameters</h5>
<table class="table table-bordered table-striped table-condensed">
<thead>
<tr>
<th>Type</th>
<th>Name</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td><a class="xref" href="Lucene.Net.Util.Automaton.IAutomatonProvider.html">IAutomatonProvider</a></td>
<td><span class="parametername">automaton_provider</span></td>
<td><p>Provider of automata for named identifiers. </p>
</td>
</tr>
</tbody>
</table>
<h5 class="returns">Returns</h5>
<table class="table table-bordered table-striped table-condensed">
<thead>
<tr>
<th>Type</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td><a class="xref" href="Lucene.Net.Util.Automaton.Automaton.html">Automaton</a></td>
<td></td>
</tr>
</tbody>
</table>
<h5 class="exceptions">Exceptions</h5>
<table class="table table-bordered table-striped table-condensed">
<thead>
<tr>
<th>Type</th>
<th>Condition</th>
</tr>
</thead>
<tbody>
<tr>
<td><span class="xref">System.ArgumentException</span></td>
<td><p>If this regular expression uses a named
identifier that is not available from the automaton provider. </p>
</td>
</tr>
</tbody>
</table>
<span class="small pull-right mobile-hide">
<span class="divider">|</span>
<a href="https://github.com/apache/lucenenet/new/docs/4.8.0-beta00013/websites/apidocs/apiSpec/new?filename=Lucene_Net_Util_Automaton_RegExp_ToAutomaton_System_Collections_Generic_IDictionary_System_String_Lucene_Net_Util_Automaton_Automaton__.md&amp;value=---%0Auid%3A%20Lucene.Net.Util.Automaton.RegExp.ToAutomaton(System.Collections.Generic.IDictionary%7BSystem.String%2CLucene.Net.Util.Automaton.Automaton%7D)%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
</span>
<span class="small pull-right mobile-hide">
<a href="https://github.com/NightOwl888/lucenenet/blob/fix/apidocs-layout/src/Lucene.Net/Util/Automaton/RegExp.cs/#L495">View Source</a>
</span>
<a id="Lucene_Net_Util_Automaton_RegExp_ToAutomaton_" data-uid="Lucene.Net.Util.Automaton.RegExp.ToAutomaton*"></a>
<h4 id="Lucene_Net_Util_Automaton_RegExp_ToAutomaton_System_Collections_Generic_IDictionary_System_String_Lucene_Net_Util_Automaton_Automaton__" data-uid="Lucene.Net.Util.Automaton.RegExp.ToAutomaton(System.Collections.Generic.IDictionary{System.String,Lucene.Net.Util.Automaton.Automaton})">ToAutomaton(IDictionary&lt;String, Automaton&gt;)</h4>
<div class="markdown level1 summary"><p>Constructs new <a class="xref" href="Lucene.Net.Util.Automaton.Automaton.html">Automaton</a> from this <a class="xref" href="Lucene.Net.Util.Automaton.RegExp.html">RegExp</a>. The
constructed automaton is minimal and deterministic and has no transitions
to dead states.</p>
</div>
<div class="markdown level1 conceptual"></div>
<h5 class="decalaration">Declaration</h5>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public virtual Automaton ToAutomaton(IDictionary&lt;string, Automaton&gt; automata)</code></pre>
</div>
<h5 class="parameters">Parameters</h5>
<table class="table table-bordered table-striped table-condensed">
<thead>
<tr>
<th>Type</th>
<th>Name</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td><span class="xref">System.Collections.Generic.IDictionary</span>&lt;<span class="xref">System.String</span>, <a class="xref" href="Lucene.Net.Util.Automaton.Automaton.html">Automaton</a>&gt;</td>
<td><span class="parametername">automata</span></td>
<td><p>A map from automaton identifiers to automata (of type
<a class="xref" href="Lucene.Net.Util.Automaton.Automaton.html">Automaton</a>). </p>
</td>
</tr>
</tbody>
</table>
<h5 class="returns">Returns</h5>
<table class="table table-bordered table-striped table-condensed">
<thead>
<tr>
<th>Type</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td><a class="xref" href="Lucene.Net.Util.Automaton.Automaton.html">Automaton</a></td>
<td></td>
</tr>
</tbody>
</table>
<h5 class="exceptions">Exceptions</h5>
<table class="table table-bordered table-striped table-condensed">
<thead>
<tr>
<th>Type</th>
<th>Condition</th>
</tr>
</thead>
<tbody>
<tr>
<td><span class="xref">System.ArgumentException</span></td>
<td><p>If this regular expression uses a named
identifier that does not occur in the automaton map. </p>
</td>
</tr>
</tbody>
</table>
<span class="small pull-right mobile-hide">
<span class="divider">|</span>
<a href="https://github.com/apache/lucenenet/new/docs/4.8.0-beta00013/websites/apidocs/apiSpec/new?filename=Lucene_Net_Util_Automaton_RegExp_ToString.md&amp;value=---%0Auid%3A%20Lucene.Net.Util.Automaton.RegExp.ToString%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A">Improve this Doc</a>
</span>
<span class="small pull-right mobile-hide">
<a href="https://github.com/NightOwl888/lucenenet/blob/fix/apidocs-layout/src/Lucene.Net/Util/Automaton/RegExp.cs/#L654">View Source</a>
</span>
<a id="Lucene_Net_Util_Automaton_RegExp_ToString_" data-uid="Lucene.Net.Util.Automaton.RegExp.ToString*"></a>
<h4 id="Lucene_Net_Util_Automaton_RegExp_ToString" data-uid="Lucene.Net.Util.Automaton.RegExp.ToString">ToString()</h4>
<div class="markdown level1 summary"><p>Constructs string from parsed regular expression.</p>
</div>
<div class="markdown level1 conceptual"></div>
<h5 class="decalaration">Declaration</h5>
<div class="codewrapper">
<pre><code class="lang-csharp hljs">public override string ToString()</code></pre>
</div>
<h5 class="returns">Returns</h5>
<table class="table table-bordered table-striped table-condensed">
<thead>
<tr>
<th>Type</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td><span class="xref">System.String</span></td>
<td></td>
</tr>
</tbody>
</table>
<h5 class="overrides">Overrides</h5>
<div><span class="xref">System.Object.ToString()</span></div>
</article>
</div>
<div class="hidden-sm col-md-2" role="complementary">
<div class="sideaffix">
<div class="contribution">
<ul class="nav">
<li>
<a href="https://github.com/apache/lucenenet/new/docs/4.8.0-beta00013/websites/apidocs/apiSpec/new?filename=Lucene_Net_Util_Automaton_RegExp.md&amp;value=---%0Auid%3A%20Lucene.Net.Util.Automaton.RegExp%0Asummary%3A%20'*You%20can%20override%20summary%20for%20the%20API%20here%20using%20*MARKDOWN*%20syntax'%0A---%0A%0A*Please%20type%20below%20more%20information%20about%20this%20API%3A*%0A%0A" class="contribution-link">Improve this Doc</a>
</li>
<li>
<a href="https://github.com/apache/lucenenet/blob/fix/apidocs-layout/src/Lucene.Net/Util/Automaton/RegExp.cs/#L370" class="contribution-link">View Source</a>
</li>
</ul>
</div>
<nav class="bs-docs-sidebar hidden-print hidden-xs hidden-sm affix" id="affix">
<!-- <p><a class="back-to-top" href="#top">Back to top</a><p> -->
</nav>
</div>
</div>
</div>
</div>
<footer>
<div class="grad-bottom"></div>
<div class="footer">
<div class="container">
<span class="pull-right">
<a href="#top">Back to top</a>
</span>
Copyright © 2020 The Apache Software Foundation, Licensed under the <a href='http://www.apache.org/licenses/LICENSE-2.0' target='_blank'>Apache License, Version 2.0</a><br> <small>Apache Lucene.Net, Lucene.Net, Apache, the Apache feather logo, and the Apache Lucene.Net project logo are trademarks of The Apache Software Foundation. <br>All other marks mentioned may be trademarks or registered trademarks of their respective owners.</small>
</div>
</div>
</footer>
</div>
<script type="text/javascript" src="https://lucenenet.apache.org/docs/4.8.0-beta00009/styles/docfx.vendor.js"></script>
<script type="text/javascript" src="https://lucenenet.apache.org/docs/4.8.0-beta00009/styles/docfx.js"></script>
<script type="text/javascript" src="https://lucenenet.apache.org/docs/4.8.0-beta00009/styles/main.js"></script>
</body>
</html>