﻿<!DOCTYPE html>
<!--[if IE]><![endif]-->
<html>
  
  <head>
    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
    <title>Class PortugueseAnalyzer
   | Apache Lucene.NET 4.8.0-beta00008 Documentation </title>
    <meta name="viewport" content="width=device-width">
    <meta name="title" content="Class PortugueseAnalyzer
   | 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.Pt.PortugueseAnalyzer">
  
  
  <h1 id="Lucene_Net_Analysis_Pt_PortugueseAnalyzer" data-uid="Lucene.Net.Analysis.Pt.PortugueseAnalyzer" class="text-break">Class PortugueseAnalyzer
  </h1>
  <div class="markdown level0 summary"><p><a class="xref" href="../Lucene.Net/Lucene.Net.Analysis.Analyzer.html">Analyzer</a> for Portuguese.
<p>You must specify the required <a class="xref" href="../Lucene.Net/Lucene.Net.Util.LuceneVersion.html">LuceneVersion</a>
compatibility when creating <a class="xref" href="Lucene.Net.Analysis.Pt.PortugueseAnalyzer.html">PortugueseAnalyzer</a>:
<ul><li> As of 3.6, PortugueseLightStemFilter is used for less aggressive stemming.</li></ul>
</p></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/Lucene.Net.Analysis.Analyzer.html">Analyzer</a></div>
    <div class="level2"><a class="xref" href="Lucene.Net.Analysis.Util.StopwordAnalyzerBase.html">StopwordAnalyzerBase</a></div>
    <div class="level3"><span class="xref">PortugueseAnalyzer</span></div>
  </div>
  <div classs="implements">
    <h5>Implements</h5>
    <div><span class="xref">System.IDisposable</span></div>
  </div>
  <div class="inheritedMembers">
    <h5>Inherited Members</h5>
    <div>
      <a class="xref" href="Lucene.Net.Analysis.Util.StopwordAnalyzerBase.html#Lucene_Net_Analysis_Util_StopwordAnalyzerBase_m_stopwords">StopwordAnalyzerBase.m_stopwords</a>
    </div>
    <div>
      <a class="xref" href="Lucene.Net.Analysis.Util.StopwordAnalyzerBase.html#Lucene_Net_Analysis_Util_StopwordAnalyzerBase_m_matchVersion">StopwordAnalyzerBase.m_matchVersion</a>
    </div>
    <div>
      <a class="xref" href="Lucene.Net.Analysis.Util.StopwordAnalyzerBase.html#Lucene_Net_Analysis_Util_StopwordAnalyzerBase_StopwordSet">StopwordAnalyzerBase.StopwordSet</a>
    </div>
    <div>
      <a class="xref" href="Lucene.Net.Analysis.Util.StopwordAnalyzerBase.html#Lucene_Net_Analysis_Util_StopwordAnalyzerBase_LoadStopwordSet_System_Boolean_System_Type_System_String_System_String_">StopwordAnalyzerBase.LoadStopwordSet(Boolean, Type, String, String)</a>
    </div>
    <div>
      <a class="xref" href="Lucene.Net.Analysis.Util.StopwordAnalyzerBase.html#Lucene_Net_Analysis_Util_StopwordAnalyzerBase_LoadStopwordSet_System_IO_FileInfo_Lucene_Net_Util_LuceneVersion_">StopwordAnalyzerBase.LoadStopwordSet(FileInfo, LuceneVersion)</a>
    </div>
    <div>
      <a class="xref" href="Lucene.Net.Analysis.Util.StopwordAnalyzerBase.html#Lucene_Net_Analysis_Util_StopwordAnalyzerBase_LoadStopwordSet_System_IO_TextReader_Lucene_Net_Util_LuceneVersion_">StopwordAnalyzerBase.LoadStopwordSet(TextReader, LuceneVersion)</a>
    </div>
    <div>
      <a class="xref" href="../Lucene.Net/Lucene.Net.Analysis.Analyzer.html#Lucene_Net_Analysis_Analyzer_NewAnonymous_System_Func_System_String_System_IO_TextReader_Lucene_Net_Analysis_TokenStreamComponents__">Analyzer.NewAnonymous(Func&lt;String, TextReader, TokenStreamComponents&gt;)</a>
    </div>
    <div>
      <a class="xref" href="../Lucene.Net/Lucene.Net.Analysis.Analyzer.html#Lucene_Net_Analysis_Analyzer_NewAnonymous_System_Func_System_String_System_IO_TextReader_Lucene_Net_Analysis_TokenStreamComponents__Lucene_Net_Analysis_ReuseStrategy_">Analyzer.NewAnonymous(Func&lt;String, TextReader, TokenStreamComponents&gt;, ReuseStrategy)</a>
    </div>
    <div>
      <a class="xref" href="../Lucene.Net/Lucene.Net.Analysis.Analyzer.html#Lucene_Net_Analysis_Analyzer_NewAnonymous_System_Func_System_String_System_IO_TextReader_Lucene_Net_Analysis_TokenStreamComponents__System_Func_System_String_System_IO_TextReader_System_IO_TextReader__">Analyzer.NewAnonymous(Func&lt;String, TextReader, TokenStreamComponents&gt;, Func&lt;String, TextReader, TextReader&gt;)</a>
    </div>
    <div>
      <a class="xref" href="../Lucene.Net/Lucene.Net.Analysis.Analyzer.html#Lucene_Net_Analysis_Analyzer_NewAnonymous_System_Func_System_String_System_IO_TextReader_Lucene_Net_Analysis_TokenStreamComponents__System_Func_System_String_System_IO_TextReader_System_IO_TextReader__Lucene_Net_Analysis_ReuseStrategy_">Analyzer.NewAnonymous(Func&lt;String, TextReader, TokenStreamComponents&gt;, Func&lt;String, TextReader, TextReader&gt;, ReuseStrategy)</a>
    </div>
    <div>
      <a class="xref" href="../Lucene.Net/Lucene.Net.Analysis.Analyzer.html#Lucene_Net_Analysis_Analyzer_GetTokenStream_System_String_System_IO_TextReader_">Analyzer.GetTokenStream(String, TextReader)</a>
    </div>
    <div>
      <a class="xref" href="../Lucene.Net/Lucene.Net.Analysis.Analyzer.html#Lucene_Net_Analysis_Analyzer_GetTokenStream_System_String_System_String_">Analyzer.GetTokenStream(String, String)</a>
    </div>
    <div>
      <a class="xref" href="../Lucene.Net/Lucene.Net.Analysis.Analyzer.html#Lucene_Net_Analysis_Analyzer_InitReader_System_String_System_IO_TextReader_">Analyzer.InitReader(String, TextReader)</a>
    </div>
    <div>
      <a class="xref" href="../Lucene.Net/Lucene.Net.Analysis.Analyzer.html#Lucene_Net_Analysis_Analyzer_GetPositionIncrementGap_System_String_">Analyzer.GetPositionIncrementGap(String)</a>
    </div>
    <div>
      <a class="xref" href="../Lucene.Net/Lucene.Net.Analysis.Analyzer.html#Lucene_Net_Analysis_Analyzer_GetOffsetGap_System_String_">Analyzer.GetOffsetGap(String)</a>
    </div>
    <div>
      <a class="xref" href="../Lucene.Net/Lucene.Net.Analysis.Analyzer.html#Lucene_Net_Analysis_Analyzer_Strategy">Analyzer.Strategy</a>
    </div>
    <div>
      <a class="xref" href="../Lucene.Net/Lucene.Net.Analysis.Analyzer.html#Lucene_Net_Analysis_Analyzer_Dispose">Analyzer.Dispose()</a>
    </div>
    <div>
      <a class="xref" href="../Lucene.Net/Lucene.Net.Analysis.Analyzer.html#Lucene_Net_Analysis_Analyzer_Dispose_System_Boolean_">Analyzer.Dispose(Boolean)</a>
    </div>
    <div>
      <a class="xref" href="../Lucene.Net/Lucene.Net.Analysis.Analyzer.html#Lucene_Net_Analysis_Analyzer_GLOBAL_REUSE_STRATEGY">Analyzer.GLOBAL_REUSE_STRATEGY</a>
    </div>
    <div>
      <a class="xref" href="../Lucene.Net/Lucene.Net.Analysis.Analyzer.html#Lucene_Net_Analysis_Analyzer_PER_FIELD_REUSE_STRATEGY">Analyzer.PER_FIELD_REUSE_STRATEGY</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.Pt.html">Lucene.Net.Analysis.Pt</a></h6>
  <h6><strong>Assembly</strong>: Lucene.Net.Analysis.Common.dll</h6>
  <h5 id="Lucene_Net_Analysis_Pt_PortugueseAnalyzer_syntax">Syntax</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public sealed class PortugueseAnalyzer : StopwordAnalyzerBase, IDisposable</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_Pt_PortugueseAnalyzer__ctor_Lucene_Net_Util_LuceneVersion_.md&amp;value=---%0Auid%3A%20Lucene.Net.Analysis.Pt.PortugueseAnalyzer.%23ctor(Lucene.Net.Util.LuceneVersion)%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/Pt/PortugueseAnalyzer.cs/#L88">View Source</a>
  </span>
  <a id="Lucene_Net_Analysis_Pt_PortugueseAnalyzer__ctor_" data-uid="Lucene.Net.Analysis.Pt.PortugueseAnalyzer.#ctor*"></a>
  <h4 id="Lucene_Net_Analysis_Pt_PortugueseAnalyzer__ctor_Lucene_Net_Util_LuceneVersion_" data-uid="Lucene.Net.Analysis.Pt.PortugueseAnalyzer.#ctor(Lucene.Net.Util.LuceneVersion)">PortugueseAnalyzer(LuceneVersion)</h4>
  <div class="markdown level1 summary"><p>Builds an analyzer with the default stop words: <a class="xref" href="Lucene.Net.Analysis.Pt.PortugueseAnalyzer.html#Lucene_Net_Analysis_Pt_PortugueseAnalyzer_DEFAULT_STOPWORD_FILE">DEFAULT_STOPWORD_FILE</a>.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public PortugueseAnalyzer(LuceneVersion matchVersion)</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.LuceneVersion.html">LuceneVersion</a></td>
        <td><span class="parametername">matchVersion</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_Pt_PortugueseAnalyzer__ctor_Lucene_Net_Util_LuceneVersion_Lucene_Net_Analysis_Util_CharArraySet_.md&amp;value=---%0Auid%3A%20Lucene.Net.Analysis.Pt.PortugueseAnalyzer.%23ctor(Lucene.Net.Util.LuceneVersion%2CLucene.Net.Analysis.Util.CharArraySet)%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/Pt/PortugueseAnalyzer.cs/#L98">View Source</a>
  </span>
  <a id="Lucene_Net_Analysis_Pt_PortugueseAnalyzer__ctor_" data-uid="Lucene.Net.Analysis.Pt.PortugueseAnalyzer.#ctor*"></a>
  <h4 id="Lucene_Net_Analysis_Pt_PortugueseAnalyzer__ctor_Lucene_Net_Util_LuceneVersion_Lucene_Net_Analysis_Util_CharArraySet_" data-uid="Lucene.Net.Analysis.Pt.PortugueseAnalyzer.#ctor(Lucene.Net.Util.LuceneVersion,Lucene.Net.Analysis.Util.CharArraySet)">PortugueseAnalyzer(LuceneVersion, CharArraySet)</h4>
  <div class="markdown level1 summary"><p>Builds an analyzer with the given stop words.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public PortugueseAnalyzer(LuceneVersion matchVersion, CharArraySet stopwords)</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.LuceneVersion.html">LuceneVersion</a></td>
        <td><span class="parametername">matchVersion</span></td>
        <td><p>lucene compatibility version </p>
</td>
      </tr>
      <tr>
        <td><a class="xref" href="Lucene.Net.Analysis.Util.CharArraySet.html">CharArraySet</a></td>
        <td><span class="parametername">stopwords</span></td>
        <td><p>a stopword set </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_Pt_PortugueseAnalyzer__ctor_Lucene_Net_Util_LuceneVersion_Lucene_Net_Analysis_Util_CharArraySet_Lucene_Net_Analysis_Util_CharArraySet_.md&amp;value=---%0Auid%3A%20Lucene.Net.Analysis.Pt.PortugueseAnalyzer.%23ctor(Lucene.Net.Util.LuceneVersion%2CLucene.Net.Analysis.Util.CharArraySet%2CLucene.Net.Analysis.Util.CharArraySet)%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/Pt/PortugueseAnalyzer.cs/#L111">View Source</a>
  </span>
  <a id="Lucene_Net_Analysis_Pt_PortugueseAnalyzer__ctor_" data-uid="Lucene.Net.Analysis.Pt.PortugueseAnalyzer.#ctor*"></a>
  <h4 id="Lucene_Net_Analysis_Pt_PortugueseAnalyzer__ctor_Lucene_Net_Util_LuceneVersion_Lucene_Net_Analysis_Util_CharArraySet_Lucene_Net_Analysis_Util_CharArraySet_" data-uid="Lucene.Net.Analysis.Pt.PortugueseAnalyzer.#ctor(Lucene.Net.Util.LuceneVersion,Lucene.Net.Analysis.Util.CharArraySet,Lucene.Net.Analysis.Util.CharArraySet)">PortugueseAnalyzer(LuceneVersion, CharArraySet, CharArraySet)</h4>
  <div class="markdown level1 summary"><p>Builds an analyzer with the given stop words. If a non-empty stem exclusion set is
provided this analyzer will add a <a class="xref" href="Lucene.Net.Analysis.Miscellaneous.SetKeywordMarkerFilter.html">SetKeywordMarkerFilter</a> before
stemming.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public PortugueseAnalyzer(LuceneVersion matchVersion, CharArraySet stopwords, CharArraySet stemExclusionSet)</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.LuceneVersion.html">LuceneVersion</a></td>
        <td><span class="parametername">matchVersion</span></td>
        <td><p>lucene compatibility version </p>
</td>
      </tr>
      <tr>
        <td><a class="xref" href="Lucene.Net.Analysis.Util.CharArraySet.html">CharArraySet</a></td>
        <td><span class="parametername">stopwords</span></td>
        <td><p>a stopword set </p>
</td>
      </tr>
      <tr>
        <td><a class="xref" href="Lucene.Net.Analysis.Util.CharArraySet.html">CharArraySet</a></td>
        <td><span class="parametername">stemExclusionSet</span></td>
        <td><p>a set of terms not to be stemmed </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_Pt_PortugueseAnalyzer_DEFAULT_STOPWORD_FILE.md&amp;value=---%0Auid%3A%20Lucene.Net.Analysis.Pt.PortugueseAnalyzer.DEFAULT_STOPWORD_FILE%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/Pt/PortugueseAnalyzer.cs/#L45">View Source</a>
  </span>
  <h4 id="Lucene_Net_Analysis_Pt_PortugueseAnalyzer_DEFAULT_STOPWORD_FILE" data-uid="Lucene.Net.Analysis.Pt.PortugueseAnalyzer.DEFAULT_STOPWORD_FILE">DEFAULT_STOPWORD_FILE</h4>
  <div class="markdown level1 summary"><p>File containing default Portuguese stopwords. </p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public const string DEFAULT_STOPWORD_FILE = &quot;portuguese_stop.txt&quot;</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>
  <h3 id="properties">Properties
  </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_Pt_PortugueseAnalyzer_DefaultStopSet.md&amp;value=---%0Auid%3A%20Lucene.Net.Analysis.Pt.PortugueseAnalyzer.DefaultStopSet%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/Pt/PortugueseAnalyzer.cs/#L50">View Source</a>
  </span>
  <a id="Lucene_Net_Analysis_Pt_PortugueseAnalyzer_DefaultStopSet_" data-uid="Lucene.Net.Analysis.Pt.PortugueseAnalyzer.DefaultStopSet*"></a>
  <h4 id="Lucene_Net_Analysis_Pt_PortugueseAnalyzer_DefaultStopSet" data-uid="Lucene.Net.Analysis.Pt.PortugueseAnalyzer.DefaultStopSet">DefaultStopSet</h4>
  <div class="markdown level1 summary"><p>Returns an unmodifiable instance of the default stop words set. </p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">public static CharArraySet DefaultStopSet { get; }</code></pre>
  </div>
  <h5 class="propertyValue">Property 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.Analysis.Util.CharArraySet.html">CharArraySet</a></td>
        <td><p>default stop words set. </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-beta00008/websites/apidocs/apiSpec/new?filename=Lucene_Net_Analysis_Pt_PortugueseAnalyzer_CreateComponents_System_String_System_IO_TextReader_.md&amp;value=---%0Auid%3A%20Lucene.Net.Analysis.Pt.PortugueseAnalyzer.CreateComponents(System.String%2CSystem.IO.TextReader)%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/Pt/PortugueseAnalyzer.cs/#L128">View Source</a>
  </span>
  <a id="Lucene_Net_Analysis_Pt_PortugueseAnalyzer_CreateComponents_" data-uid="Lucene.Net.Analysis.Pt.PortugueseAnalyzer.CreateComponents*"></a>
  <h4 id="Lucene_Net_Analysis_Pt_PortugueseAnalyzer_CreateComponents_System_String_System_IO_TextReader_" data-uid="Lucene.Net.Analysis.Pt.PortugueseAnalyzer.CreateComponents(System.String,System.IO.TextReader)">CreateComponents(String, TextReader)</h4>
  <div class="markdown level1 summary"><p>Creates a
<a class="xref" href="../Lucene.Net/Lucene.Net.Analysis.TokenStreamComponents.html">TokenStreamComponents</a>
which tokenizes all the text in the provided <span class="xref">System.IO.TextReader</span>.</p>
</div>
  <div class="markdown level1 conceptual"></div>
  <h5 class="decalaration">Declaration</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">protected override TokenStreamComponents CreateComponents(string fieldName, TextReader reader)</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">fieldName</span></td>
        <td></td>
      </tr>
      <tr>
        <td><span class="xref">System.IO.TextReader</span></td>
        <td><span class="parametername">reader</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><a class="xref" href="../Lucene.Net/Lucene.Net.Analysis.TokenStreamComponents.html">TokenStreamComponents</a></td>
        <td><p>A
<a class="xref" href="../Lucene.Net/Lucene.Net.Analysis.TokenStreamComponents.html">TokenStreamComponents</a>
built from an <a class="xref" href="Lucene.Net.Analysis.Standard.StandardTokenizer.html">StandardTokenizer</a> filtered with
<a class="xref" href="Lucene.Net.Analysis.Standard.StandardFilter.html">StandardFilter</a>, <a class="xref" href="Lucene.Net.Analysis.Core.LowerCaseFilter.html">LowerCaseFilter</a>, <a class="xref" href="Lucene.Net.Analysis.Core.StopFilter.html">StopFilter</a>
, <a class="xref" href="Lucene.Net.Analysis.Miscellaneous.SetKeywordMarkerFilter.html">SetKeywordMarkerFilter</a> if a stem exclusion set is
provided and <a class="xref" href="Lucene.Net.Analysis.Pt.PortugueseLightStemFilter.html">PortugueseLightStemFilter</a>. </p>
</td>
      </tr>
    </tbody>
  </table>
  <h5 class="overrides">Overrides</h5>
  <div><a class="xref" href="../Lucene.Net/Lucene.Net.Analysis.Analyzer.html#Lucene_Net_Analysis_Analyzer_CreateComponents_System_String_System_IO_TextReader_">Analyzer.CreateComponents(String, TextReader)</a></div>
  <h3 id="implements">Implements</h3>
  <div>
      <span class="xref">System.IDisposable</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-beta00008/websites/apidocs/apiSpec/new?filename=Lucene_Net_Analysis_Pt_PortugueseAnalyzer.md&amp;value=---%0Auid%3A%20Lucene.Net.Analysis.Pt.PortugueseAnalyzer%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/Pt/PortugueseAnalyzer.cs/#L39" 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>
