﻿<!DOCTYPE html>
<!--[if IE]><![endif]-->
<html>
  
  <head>
    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
    <title>Class DateRecognizerSinkFilter
   | Apache Lucene.NET 4.8.0-beta00008 Documentation </title>
    <meta name="viewport" content="width=device-width">
    <meta name="title" content="Class DateRecognizerSinkFilter
   | Apache Lucene.NET 4.8.0-beta00008 Documentation ">
    <meta name="generator" content="docfx 2.50.0.0">
    
    <link rel="shortcut icon" href="../../logo/favicon.ico">
    <link rel="stylesheet" href="../../styles/docfx.vendor.css">
    <link rel="stylesheet" href="../../styles/docfx.css">
    <link rel="stylesheet" href="../../styles/main.css">
    <meta property="docfx:navrel" content="../../toc.html">
    <meta property="docfx:tocrel" content="../toc.html">
    
    <meta property="docfx:rel" content="../../">
    
  </head>
  <body data-spy="scroll" data-target="#affix" data-offset="120">
    <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="../../index.html">
                <img id="logo" class="svg" src="../../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" id="breadcrumb">
            <ul class="breadcrumb">
              <li></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.Analysis.Sinks.DateRecognizerSinkFilter">
  
  
  <h1 id="Lucene_Net_Analysis_Sinks_DateRecognizerSinkFilter" data-uid="Lucene.Net.Analysis.Sinks.DateRecognizerSinkFilter" class="text-break">Class DateRecognizerSinkFilter
  </h1>
  <div class="markdown level0 summary"><p>Attempts to parse the <a class="xref" href="../Lucene.Net/Lucene.Net.Analysis.TokenAttributes.CharTermAttribute.html#Lucene_Net_Analysis_TokenAttributes_CharTermAttribute_ToString">ToString()</a> as a Date using either the 
<span class="xref">System.DateTime.TryParse(System.String,System.IFormatProvider,System.Globalization.DateTimeStyles,System.DateTime@)</span> or 
<span class="xref">System.DateTime.TryParseExact(System.String,System.String[],System.IFormatProvider,System.Globalization.DateTimeStyles,System.DateTime@)</span> methods.
If a format is passed, <span class="xref">System.DateTime.TryParseExact(System.String,System.String[],System.IFormatProvider,System.Globalization.DateTimeStyles,System.DateTime@)</span> 
will be used, and the format must strictly match one of the specified formats as specified in the MSDN documentation.
If the value is a Date, it will add it to the sink.</p>
</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"><a class="xref" href="Lucene.Net.Analysis.Sinks.TeeSinkTokenFilter.SinkFilter.html">TeeSinkTokenFilter.SinkFilter</a></div>
    <div class="level2"><span class="xref">DateRecognizerSinkFilter</span></div>
  </div>
  <div class="inheritedMembers">
    <h5>Inherited Members</h5>
    <div>
      <a class="xref" href="Lucene.Net.Analysis.Sinks.TeeSinkTokenFilter.SinkFilter.html#Lucene_Net_Analysis_Sinks_TeeSinkTokenFilter_SinkFilter_Reset">TeeSinkTokenFilter.SinkFilter.Reset()</a>
    </div>
    <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>
      <span class="xref">System.Object.ToString()</span>
    </div>
  </div>
  <h6><strong>Namespace</strong>: <a class="xref" href="Lucene.Net.Analysis.Sinks.html">Lucene.Net.Analysis.Sinks</a></h6>
  <h6><strong>Assembly</strong>: Lucene.Net.Analysis.Common.dll</h6>
  <h5 id="Lucene_Net_Analysis_Sinks_DateRecognizerSinkFilter_syntax">Syntax</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public class DateRecognizerSinkFilter : TeeSinkTokenFilter.SinkFilter</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-beta00008/websites/apidocs/apiSpec/new?filename=Lucene_Net_Analysis_Sinks_DateRecognizerSinkFilter__ctor.md&amp;value=---%0Auid%3A%20Lucene.Net.Analysis.Sinks.DateRecognizerSinkFilter.%23ctor%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/Shazwazza/lucenenet/blob/docs-may/src/Lucene.Net.Analysis.Common/Analysis/Sinks/DateRecognizerSinkFilter.cs/#L44">View Source</a>
  </span>
  <a id="Lucene_Net_Analysis_Sinks_DateRecognizerSinkFilter__ctor_" data-uid="Lucene.Net.Analysis.Sinks.DateRecognizerSinkFilter.#ctor*"></a>
  <h4 id="Lucene_Net_Analysis_Sinks_DateRecognizerSinkFilter__ctor" data-uid="Lucene.Net.Analysis.Sinks.DateRecognizerSinkFilter.#ctor">DateRecognizerSinkFilter()</h4>
  <div class="markdown level1 summary"><p>Creates a new instance of <a class="xref" href="Lucene.Net.Analysis.Sinks.DateRecognizerSinkFilter.html">DateRecognizerSinkFilter</a> using the current culture and <span class="xref">System.Globalization.DateTimeStyles.None</span>.
Loosely matches standard DateTime formats using <span class="xref">System.DateTime.TryParse(System.String,System.IFormatProvider,System.Globalization.DateTimeStyles,System.DateTime@)</span>.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public DateRecognizerSinkFilter()</code></pre>
  </div>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/apache/lucenenet/new/docs/4.8.0-beta00008/websites/apidocs/apiSpec/new?filename=Lucene_Net_Analysis_Sinks_DateRecognizerSinkFilter__ctor_System_IFormatProvider_.md&amp;value=---%0Auid%3A%20Lucene.Net.Analysis.Sinks.DateRecognizerSinkFilter.%23ctor(System.IFormatProvider)%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/Shazwazza/lucenenet/blob/docs-may/src/Lucene.Net.Analysis.Common/Analysis/Sinks/DateRecognizerSinkFilter.cs/#L53">View Source</a>
  </span>
  <a id="Lucene_Net_Analysis_Sinks_DateRecognizerSinkFilter__ctor_" data-uid="Lucene.Net.Analysis.Sinks.DateRecognizerSinkFilter.#ctor*"></a>
  <h4 id="Lucene_Net_Analysis_Sinks_DateRecognizerSinkFilter__ctor_System_IFormatProvider_" data-uid="Lucene.Net.Analysis.Sinks.DateRecognizerSinkFilter.#ctor(System.IFormatProvider)">DateRecognizerSinkFilter(IFormatProvider)</h4>
  <div class="markdown level1 summary"><p>Creates a new instance of <a class="xref" href="Lucene.Net.Analysis.Sinks.DateRecognizerSinkFilter.html">DateRecognizerSinkFilter</a> using the supplied culture and <span class="xref">System.Globalization.DateTimeStyles.None</span>.
Loosely matches standard DateTime formats using <span class="xref">System.DateTime.TryParse(System.String,System.IFormatProvider,System.Globalization.DateTimeStyles,System.DateTime@)</span>.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public DateRecognizerSinkFilter(IFormatProvider culture)</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.IFormatProvider</span></td>
        <td><span class="parametername">culture</span></td>
        <td><p>An object that supplies culture-specific format information</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-beta00008/websites/apidocs/apiSpec/new?filename=Lucene_Net_Analysis_Sinks_DateRecognizerSinkFilter__ctor_System_IFormatProvider_System_Globalization_DateTimeStyles_.md&amp;value=---%0Auid%3A%20Lucene.Net.Analysis.Sinks.DateRecognizerSinkFilter.%23ctor(System.IFormatProvider%2CSystem.Globalization.DateTimeStyles)%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/Shazwazza/lucenenet/blob/docs-may/src/Lucene.Net.Analysis.Common/Analysis/Sinks/DateRecognizerSinkFilter.cs/#L84">View Source</a>
  </span>
  <a id="Lucene_Net_Analysis_Sinks_DateRecognizerSinkFilter__ctor_" data-uid="Lucene.Net.Analysis.Sinks.DateRecognizerSinkFilter.#ctor*"></a>
  <h4 id="Lucene_Net_Analysis_Sinks_DateRecognizerSinkFilter__ctor_System_IFormatProvider_System_Globalization_DateTimeStyles_" data-uid="Lucene.Net.Analysis.Sinks.DateRecognizerSinkFilter.#ctor(System.IFormatProvider,System.Globalization.DateTimeStyles)">DateRecognizerSinkFilter(IFormatProvider, DateTimeStyles)</h4>
  <div class="markdown level1 summary"><p>Creates a new instance of <a class="xref" href="Lucene.Net.Analysis.Sinks.DateRecognizerSinkFilter.html">DateRecognizerSinkFilter</a>  using the supplied culture and <span class="xref">System.Globalization.DateTimeStyles</span>.
Loosely matches standard DateTime formats using <span class="xref">System.DateTime.TryParse(System.String,System.IFormatProvider,System.Globalization.DateTimeStyles,System.DateTime@)</span>.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public DateRecognizerSinkFilter(IFormatProvider culture, DateTimeStyles style)</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.IFormatProvider</span></td>
        <td><span class="parametername">culture</span></td>
        <td><p>An object that supplies culture-specific format information</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Globalization.DateTimeStyles</span></td>
        <td><span class="parametername">style</span></td>
        <td><p>A bitwise combination of enumeration values that indicates the permitted format of s. 
A typical value to specify is <span class="xref">System.Globalization.DateTimeStyles.None</span></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-beta00008/websites/apidocs/apiSpec/new?filename=Lucene_Net_Analysis_Sinks_DateRecognizerSinkFilter__ctor_System_String_.md&amp;value=---%0Auid%3A%20Lucene.Net.Analysis.Sinks.DateRecognizerSinkFilter.%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/Shazwazza/lucenenet/blob/docs-may/src/Lucene.Net.Analysis.Common/Analysis/Sinks/DateRecognizerSinkFilter.cs/#L63">View Source</a>
  </span>
  <a id="Lucene_Net_Analysis_Sinks_DateRecognizerSinkFilter__ctor_" data-uid="Lucene.Net.Analysis.Sinks.DateRecognizerSinkFilter.#ctor*"></a>
  <h4 id="Lucene_Net_Analysis_Sinks_DateRecognizerSinkFilter__ctor_System_String_" data-uid="Lucene.Net.Analysis.Sinks.DateRecognizerSinkFilter.#ctor(System.String)">DateRecognizerSinkFilter(String)</h4>
  <div class="markdown level1 summary"><p>Creates a new instance of <a class="xref" href="Lucene.Net.Analysis.Sinks.DateRecognizerSinkFilter.html">DateRecognizerSinkFilter</a> using the current culture and <span class="xref">System.Globalization.DateTimeStyles.None</span>.
Strictly matches the supplied DateTime formats using <span class="xref">System.DateTime.TryParseExact(System.String,System.String,System.IFormatProvider,System.Globalization.DateTimeStyles,System.DateTime@)</span>.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public DateRecognizerSinkFilter(string format)</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">format</span></td>
        <td><p>The allowable format of the <a class="xref" href="../Lucene.Net/Lucene.Net.Analysis.TokenAttributes.CharTermAttribute.html#Lucene_Net_Analysis_TokenAttributes_CharTermAttribute_ToString">ToString()</a>.
If supplied, it must match the format of the date exactly to get a match.</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-beta00008/websites/apidocs/apiSpec/new?filename=Lucene_Net_Analysis_Sinks_DateRecognizerSinkFilter__ctor_System_String_System_IFormatProvider_.md&amp;value=---%0Auid%3A%20Lucene.Net.Analysis.Sinks.DateRecognizerSinkFilter.%23ctor(System.String%2CSystem.IFormatProvider)%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/Shazwazza/lucenenet/blob/docs-may/src/Lucene.Net.Analysis.Common/Analysis/Sinks/DateRecognizerSinkFilter.cs/#L95">View Source</a>
  </span>
  <a id="Lucene_Net_Analysis_Sinks_DateRecognizerSinkFilter__ctor_" data-uid="Lucene.Net.Analysis.Sinks.DateRecognizerSinkFilter.#ctor*"></a>
  <h4 id="Lucene_Net_Analysis_Sinks_DateRecognizerSinkFilter__ctor_System_String_System_IFormatProvider_" data-uid="Lucene.Net.Analysis.Sinks.DateRecognizerSinkFilter.#ctor(System.String,System.IFormatProvider)">DateRecognizerSinkFilter(String, IFormatProvider)</h4>
  <div class="markdown level1 summary"><p>Creates a new instance of <a class="xref" href="Lucene.Net.Analysis.Sinks.DateRecognizerSinkFilter.html">DateRecognizerSinkFilter</a>  using the supplied format, culture and <span class="xref">System.Globalization.DateTimeStyles.None</span>.
Strictly matches the supplied DateTime formats using <span class="xref">System.DateTime.TryParseExact(System.String,System.String,System.IFormatProvider,System.Globalization.DateTimeStyles,System.DateTime@)</span>.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public DateRecognizerSinkFilter(string format, IFormatProvider culture)</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">format</span></td>
        <td><p>The allowable format of the <a class="xref" href="../Lucene.Net/Lucene.Net.Analysis.TokenAttributes.CharTermAttribute.html#Lucene_Net_Analysis_TokenAttributes_CharTermAttribute_ToString">ToString()</a>.
If supplied, it must match the format of the date exactly to get a match.</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.IFormatProvider</span></td>
        <td><span class="parametername">culture</span></td>
        <td><p>An object that supplies culture-specific format information</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-beta00008/websites/apidocs/apiSpec/new?filename=Lucene_Net_Analysis_Sinks_DateRecognizerSinkFilter__ctor_System_String_System_IFormatProvider_System_Globalization_DateTimeStyles_.md&amp;value=---%0Auid%3A%20Lucene.Net.Analysis.Sinks.DateRecognizerSinkFilter.%23ctor(System.String%2CSystem.IFormatProvider%2CSystem.Globalization.DateTimeStyles)%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/Shazwazza/lucenenet/blob/docs-may/src/Lucene.Net.Analysis.Common/Analysis/Sinks/DateRecognizerSinkFilter.cs/#L119">View Source</a>
  </span>
  <a id="Lucene_Net_Analysis_Sinks_DateRecognizerSinkFilter__ctor_" data-uid="Lucene.Net.Analysis.Sinks.DateRecognizerSinkFilter.#ctor*"></a>
  <h4 id="Lucene_Net_Analysis_Sinks_DateRecognizerSinkFilter__ctor_System_String_System_IFormatProvider_System_Globalization_DateTimeStyles_" data-uid="Lucene.Net.Analysis.Sinks.DateRecognizerSinkFilter.#ctor(System.String,System.IFormatProvider,System.Globalization.DateTimeStyles)">DateRecognizerSinkFilter(String, IFormatProvider, DateTimeStyles)</h4>
  <div class="markdown level1 summary"><p>Creates a new instance of <a class="xref" href="Lucene.Net.Analysis.Sinks.DateRecognizerSinkFilter.html">DateRecognizerSinkFilter</a> using the supplied format, culture and <span class="xref">System.Globalization.DateTimeStyles</span>.
Strictly matches the supplied DateTime formats using <span class="xref">System.DateTime.TryParseExact(System.String,System.String,System.IFormatProvider,System.Globalization.DateTimeStyles,System.DateTime@)</span>.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public DateRecognizerSinkFilter(string format, IFormatProvider culture, DateTimeStyles style)</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">format</span></td>
        <td><p>The allowable format of the <a class="xref" href="../Lucene.Net/Lucene.Net.Analysis.TokenAttributes.CharTermAttribute.html#Lucene_Net_Analysis_TokenAttributes_CharTermAttribute_ToString">ToString()</a>.
If supplied, it must match the format of the date exactly to get a match.</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.IFormatProvider</span></td>
        <td><span class="parametername">culture</span></td>
        <td><p>An object that supplies culture-specific format information</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Globalization.DateTimeStyles</span></td>
        <td><span class="parametername">style</span></td>
        <td><p>A bitwise combination of enumeration values that indicates the permitted format of s. 
A typical value to specify is <span class="xref">System.Globalization.DateTimeStyles.None</span></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-beta00008/websites/apidocs/apiSpec/new?filename=Lucene_Net_Analysis_Sinks_DateRecognizerSinkFilter__ctor_System_String___.md&amp;value=---%0Auid%3A%20Lucene.Net.Analysis.Sinks.DateRecognizerSinkFilter.%23ctor(System.String%5B%5D)%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/Shazwazza/lucenenet/blob/docs-may/src/Lucene.Net.Analysis.Common/Analysis/Sinks/DateRecognizerSinkFilter.cs/#L73">View Source</a>
  </span>
  <a id="Lucene_Net_Analysis_Sinks_DateRecognizerSinkFilter__ctor_" data-uid="Lucene.Net.Analysis.Sinks.DateRecognizerSinkFilter.#ctor*"></a>
  <h4 id="Lucene_Net_Analysis_Sinks_DateRecognizerSinkFilter__ctor_System_String___" data-uid="Lucene.Net.Analysis.Sinks.DateRecognizerSinkFilter.#ctor(System.String[])">DateRecognizerSinkFilter(String[])</h4>
  <div class="markdown level1 summary"><p>Creates a new instance of <a class="xref" href="Lucene.Net.Analysis.Sinks.DateRecognizerSinkFilter.html">DateRecognizerSinkFilter</a>  using the current culture and <span class="xref">System.Globalization.DateTimeStyles.None</span>.
Strictly matches the supplied DateTime formats using <span class="xref">System.DateTime.TryParseExact(System.String,System.String[],System.IFormatProvider,System.Globalization.DateTimeStyles,System.DateTime@)</span>.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public DateRecognizerSinkFilter(string[] formats)</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">formats</span></td>
        <td><p>An array of allowable formats of the <a class="xref" href="../Lucene.Net/Lucene.Net.Analysis.TokenAttributes.CharTermAttribute.html#Lucene_Net_Analysis_TokenAttributes_CharTermAttribute_ToString">ToString()</a>.
If supplied, one of them must match the format of the date exactly to get a match.</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-beta00008/websites/apidocs/apiSpec/new?filename=Lucene_Net_Analysis_Sinks_DateRecognizerSinkFilter__ctor_System_String___System_IFormatProvider_.md&amp;value=---%0Auid%3A%20Lucene.Net.Analysis.Sinks.DateRecognizerSinkFilter.%23ctor(System.String%5B%5D%2CSystem.IFormatProvider)%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/Shazwazza/lucenenet/blob/docs-may/src/Lucene.Net.Analysis.Common/Analysis/Sinks/DateRecognizerSinkFilter.cs/#L106">View Source</a>
  </span>
  <a id="Lucene_Net_Analysis_Sinks_DateRecognizerSinkFilter__ctor_" data-uid="Lucene.Net.Analysis.Sinks.DateRecognizerSinkFilter.#ctor*"></a>
  <h4 id="Lucene_Net_Analysis_Sinks_DateRecognizerSinkFilter__ctor_System_String___System_IFormatProvider_" data-uid="Lucene.Net.Analysis.Sinks.DateRecognizerSinkFilter.#ctor(System.String[],System.IFormatProvider)">DateRecognizerSinkFilter(String[], IFormatProvider)</h4>
  <div class="markdown level1 summary"><p>Creates a new instance of <a class="xref" href="Lucene.Net.Analysis.Sinks.DateRecognizerSinkFilter.html">DateRecognizerSinkFilter</a>  using the supplied formats, culture and <span class="xref">System.Globalization.DateTimeStyles.None</span>.
Strictly matches the supplied DateTime formats using <span class="xref">System.DateTime.TryParseExact(System.String,System.String[],System.IFormatProvider,System.Globalization.DateTimeStyles,System.DateTime@)</span>.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public DateRecognizerSinkFilter(string[] formats, IFormatProvider culture)</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">formats</span></td>
        <td><p>An array of allowable formats of the <a class="xref" href="../Lucene.Net/Lucene.Net.Analysis.TokenAttributes.CharTermAttribute.html#Lucene_Net_Analysis_TokenAttributes_CharTermAttribute_ToString">ToString()</a>.
If supplied, one of them must match the format of the date exactly to get a match.</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.IFormatProvider</span></td>
        <td><span class="parametername">culture</span></td>
        <td><p>An object that supplies culture-specific format information</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-beta00008/websites/apidocs/apiSpec/new?filename=Lucene_Net_Analysis_Sinks_DateRecognizerSinkFilter__ctor_System_String___System_IFormatProvider_System_Globalization_DateTimeStyles_.md&amp;value=---%0Auid%3A%20Lucene.Net.Analysis.Sinks.DateRecognizerSinkFilter.%23ctor(System.String%5B%5D%2CSystem.IFormatProvider%2CSystem.Globalization.DateTimeStyles)%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/Shazwazza/lucenenet/blob/docs-may/src/Lucene.Net.Analysis.Common/Analysis/Sinks/DateRecognizerSinkFilter.cs/#L132">View Source</a>
  </span>
  <a id="Lucene_Net_Analysis_Sinks_DateRecognizerSinkFilter__ctor_" data-uid="Lucene.Net.Analysis.Sinks.DateRecognizerSinkFilter.#ctor*"></a>
  <h4 id="Lucene_Net_Analysis_Sinks_DateRecognizerSinkFilter__ctor_System_String___System_IFormatProvider_System_Globalization_DateTimeStyles_" data-uid="Lucene.Net.Analysis.Sinks.DateRecognizerSinkFilter.#ctor(System.String[],System.IFormatProvider,System.Globalization.DateTimeStyles)">DateRecognizerSinkFilter(String[], IFormatProvider, DateTimeStyles)</h4>
  <div class="markdown level1 summary"><p>Creates a new instance of <a class="xref" href="Lucene.Net.Analysis.Sinks.DateRecognizerSinkFilter.html">DateRecognizerSinkFilter</a> using the supplied formats, culture and <span class="xref">System.Globalization.DateTimeStyles</span>.
Strictly matches the supplied DateTime formats using <span class="xref">System.DateTime.TryParseExact(System.String,System.String[],System.IFormatProvider,System.Globalization.DateTimeStyles,System.DateTime@)</span>.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public DateRecognizerSinkFilter(string[] formats, IFormatProvider culture, DateTimeStyles style)</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">formats</span></td>
        <td><p>An array of allowable formats of the <a class="xref" href="../Lucene.Net/Lucene.Net.Analysis.TokenAttributes.CharTermAttribute.html#Lucene_Net_Analysis_TokenAttributes_CharTermAttribute_ToString">ToString()</a>.
If supplied, one of them must match the format of the date exactly to get a match.</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.IFormatProvider</span></td>
        <td><span class="parametername">culture</span></td>
        <td><p>An object that supplies culture-specific format information</p>
</td>
      </tr>
      <tr>
        <td><span class="xref">System.Globalization.DateTimeStyles</span></td>
        <td><span class="parametername">style</span></td>
        <td><p>A bitwise combination of enumeration values that indicates the permitted format of s. 
A typical value to specify is <span class="xref">System.Globalization.DateTimeStyles.None</span></p>
</td>
      </tr>
    </tbody>
  </table>
  <h3 id="fields">Fields
  </h3>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/apache/lucenenet/new/docs/4.8.0-beta00008/websites/apidocs/apiSpec/new?filename=Lucene_Net_Analysis_Sinks_DateRecognizerSinkFilter_m_culture.md&amp;value=---%0Auid%3A%20Lucene.Net.Analysis.Sinks.DateRecognizerSinkFilter.m_culture%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/Shazwazza/lucenenet/blob/docs-may/src/Lucene.Net.Analysis.Common/Analysis/Sinks/DateRecognizerSinkFilter.cs/#L37">View Source</a>
  </span>
  <h4 id="Lucene_Net_Analysis_Sinks_DateRecognizerSinkFilter_m_culture" data-uid="Lucene.Net.Analysis.Sinks.DateRecognizerSinkFilter.m_culture">m_culture</h4>
  <div class="markdown level1 summary"></div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">protected IFormatProvider m_culture</code></pre>
  </div>
  <h5 class="fieldValue">Field Value</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.IFormatProvider</span></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-beta00008/websites/apidocs/apiSpec/new?filename=Lucene_Net_Analysis_Sinks_DateRecognizerSinkFilter_m_formats.md&amp;value=---%0Auid%3A%20Lucene.Net.Analysis.Sinks.DateRecognizerSinkFilter.m_formats%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/Shazwazza/lucenenet/blob/docs-may/src/Lucene.Net.Analysis.Common/Analysis/Sinks/DateRecognizerSinkFilter.cs/#L38">View Source</a>
  </span>
  <h4 id="Lucene_Net_Analysis_Sinks_DateRecognizerSinkFilter_m_formats" data-uid="Lucene.Net.Analysis.Sinks.DateRecognizerSinkFilter.m_formats">m_formats</h4>
  <div class="markdown level1 summary"></div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">protected string[] m_formats</code></pre>
  </div>
  <h5 class="fieldValue">Field Value</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>
  <span class="small pull-right mobile-hide">
    <span class="divider">|</span>
    <a href="https://github.com/apache/lucenenet/new/docs/4.8.0-beta00008/websites/apidocs/apiSpec/new?filename=Lucene_Net_Analysis_Sinks_DateRecognizerSinkFilter_m_style.md&amp;value=---%0Auid%3A%20Lucene.Net.Analysis.Sinks.DateRecognizerSinkFilter.m_style%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/Shazwazza/lucenenet/blob/docs-may/src/Lucene.Net.Analysis.Common/Analysis/Sinks/DateRecognizerSinkFilter.cs/#L35">View Source</a>
  </span>
  <h4 id="Lucene_Net_Analysis_Sinks_DateRecognizerSinkFilter_m_style" data-uid="Lucene.Net.Analysis.Sinks.DateRecognizerSinkFilter.m_style">m_style</h4>
  <div class="markdown level1 summary"></div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">protected DateTimeStyles m_style</code></pre>
  </div>
  <h5 class="fieldValue">Field Value</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.Globalization.DateTimeStyles</span></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-beta00008/websites/apidocs/apiSpec/new?filename=Lucene_Net_Analysis_Sinks_DateRecognizerSinkFilter_m_termAtt.md&amp;value=---%0Auid%3A%20Lucene.Net.Analysis.Sinks.DateRecognizerSinkFilter.m_termAtt%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/Shazwazza/lucenenet/blob/docs-may/src/Lucene.Net.Analysis.Common/Analysis/Sinks/DateRecognizerSinkFilter.cs/#L36">View Source</a>
  </span>
  <h4 id="Lucene_Net_Analysis_Sinks_DateRecognizerSinkFilter_m_termAtt" data-uid="Lucene.Net.Analysis.Sinks.DateRecognizerSinkFilter.m_termAtt">m_termAtt</h4>
  <div class="markdown level1 summary"></div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">protected ICharTermAttribute m_termAtt</code></pre>
  </div>
  <h5 class="fieldValue">Field Value</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/Lucene.Net.Analysis.TokenAttributes.ICharTermAttribute.html">ICharTermAttribute</a></td>
        <td></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-beta00008/websites/apidocs/apiSpec/new?filename=Lucene_Net_Analysis_Sinks_DateRecognizerSinkFilter_Accept_Lucene_Net_Util_AttributeSource_.md&amp;value=---%0Auid%3A%20Lucene.Net.Analysis.Sinks.DateRecognizerSinkFilter.Accept(Lucene.Net.Util.AttributeSource)%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/Shazwazza/lucenenet/blob/docs-may/src/Lucene.Net.Analysis.Common/Analysis/Sinks/DateRecognizerSinkFilter.cs/#L139">View Source</a>
  </span>
  <a id="Lucene_Net_Analysis_Sinks_DateRecognizerSinkFilter_Accept_" data-uid="Lucene.Net.Analysis.Sinks.DateRecognizerSinkFilter.Accept*"></a>
  <h4 id="Lucene_Net_Analysis_Sinks_DateRecognizerSinkFilter_Accept_Lucene_Net_Util_AttributeSource_" data-uid="Lucene.Net.Analysis.Sinks.DateRecognizerSinkFilter.Accept(Lucene.Net.Util.AttributeSource)">Accept(AttributeSource)</h4>
  <div class="markdown level1 summary"></div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public override bool Accept(AttributeSource source)</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/Lucene.Net.Util.AttributeSource.html">AttributeSource</a></td>
        <td><span class="parametername">source</span></td>
        <td></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></td>
      </tr>
    </tbody>
  </table>
  <h5 class="overrides">Overrides</h5>
  <div><a class="xref" href="Lucene.Net.Analysis.Sinks.TeeSinkTokenFilter.SinkFilter.html#Lucene_Net_Analysis_Sinks_TeeSinkTokenFilter_SinkFilter_Accept_Lucene_Net_Util_AttributeSource_">TeeSinkTokenFilter.SinkFilter.Accept(AttributeSource)</a></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-beta00008/websites/apidocs/apiSpec/new?filename=Lucene_Net_Analysis_Sinks_DateRecognizerSinkFilter.md&amp;value=---%0Auid%3A%20Lucene.Net.Analysis.Sinks.DateRecognizerSinkFilter%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/Shazwazza/lucenenet/blob/docs-may/src/Lucene.Net.Analysis.Common/Analysis/Sinks/DateRecognizerSinkFilter.cs/#L33" 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 Licensed to the Apache Software Foundation (ASF)
            
          </div>
        </div>
      </footer>
    </div>
    
    <script type="text/javascript" src="../../styles/docfx.vendor.js"></script>
    <script type="text/javascript" src="../../styles/docfx.js"></script>
    <script type="text/javascript" src="../../styles/main.js"></script>
  </body>
</html>
