﻿<!DOCTYPE html>
<!--[if IE]><![endif]-->
<html>
  
  <head>
    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
    <title>Namespace Lucene.Net.Analysis.El
   | Apache Lucene.NET 4.8.0-beta00008 Documentation </title>
    <meta name="viewport" content="width=device-width">
    <meta name="title" content="Namespace Lucene.Net.Analysis.El
   | 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.El">
  
  <h1 id="Lucene_Net_Analysis_El" data-uid="Lucene.Net.Analysis.El" class="text-break">Namespace Lucene.Net.Analysis.El
  </h1>
  <div class="markdown level0 summary"><!--
 Licensed to the Apache Software Foundation (ASF) under one or more
 contributor license agreements.  See the NOTICE file distributed with
 this work for additional information regarding copyright ownership.
 The ASF licenses this file to You under the Apache License, Version 2.0
 (the "License"); you may not use this file except in compliance with
 the License.  You may obtain a copy of the License at

     http://www.apache.org/licenses/LICENSE-2.0

 Unless required by applicable law or agreed to in writing, software
 distributed under the License is distributed on an "AS IS" BASIS,
 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 See the License for the specific language governing permissions and
 limitations under the License.
-->
<p>Analyzer for Greek.</p>
</div>
  <div class="markdown level0 conceptual"></div>
  <div class="markdown level0 remarks"></div>
    <h3 id="classes">Classes
  </h3>
      <h4><a class="xref" href="Lucene.Net.Analysis.El.GreekAnalyzer.html">GreekAnalyzer</a></h4>
      <section><p><a class="xref" href="../Lucene.Net/Lucene.Net.Analysis.Analyzer.html">Analyzer</a> for the Greek language. 
<p>
Supports an external list of stopwords (words
that will not be indexed at all).
A default set of stopwords is used unless an alternative list is specified.
</p>
<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.El.GreekAnalyzer.html">GreekAnalyzer</a>:
<ul><li> As of 3.1, StandardFilter and GreekStemmer are used by default.</li><li> As of 2.9, StopFilter preserves position
       increments</li></ul>
</p>
<p><code>NOTE</code>: This class uses the same <a class="xref" href="../Lucene.Net/Lucene.Net.Util.LuceneVersion.html">LuceneVersion</a>
dependent settings as <a class="xref" href="Lucene.Net.Analysis.Standard.StandardAnalyzer.html">StandardAnalyzer</a>.</p></p>
</section>
      <h4><a class="xref" href="Lucene.Net.Analysis.El.GreekLowerCaseFilter.html">GreekLowerCaseFilter</a></h4>
      <section><p>Normalizes token text to lower case, removes some Greek diacritics,
and standardizes final sigma to sigma. 
<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.El.GreekLowerCaseFilter.html">GreekLowerCaseFilter</a>:
<ul><li> As of 3.1, supplementary characters are properly lowercased.</li></ul>
</p></p>
</section>
      <h4><a class="xref" href="Lucene.Net.Analysis.El.GreekLowerCaseFilterFactory.html">GreekLowerCaseFilterFactory</a></h4>
      <section><p>Factory for <a class="xref" href="Lucene.Net.Analysis.El.GreekLowerCaseFilter.html">GreekLowerCaseFilter</a>. </p>
<pre><code>&lt;fieldType name=&quot;text_glc&quot; class=&quot;solr.TextField&quot; positionIncrementGap=&quot;100&quot;>
  &lt;analyzer>
    &lt;tokenizer class=&quot;solr.StandardTokenizerFactory&quot;/>
    &lt;filter class=&quot;solr.GreekLowerCaseFilterFactory&quot;/>
  &lt;/analyzer>
&lt;/fieldType></code></pre>
</section>
      <h4><a class="xref" href="Lucene.Net.Analysis.El.GreekStemFilter.html">GreekStemFilter</a></h4>
      <section><p>A <a class="xref" href="../Lucene.Net/Lucene.Net.Analysis.TokenFilter.html">TokenFilter</a> that applies <a class="xref" href="Lucene.Net.Analysis.El.GreekStemmer.html">GreekStemmer</a> to stem Greek
words.
<p>
To prevent terms from being stemmed use an instance of
<a class="xref" href="Lucene.Net.Analysis.Miscellaneous.SetKeywordMarkerFilter.html">SetKeywordMarkerFilter</a> or a custom <a class="xref" href="../Lucene.Net/Lucene.Net.Analysis.TokenFilter.html">TokenFilter</a> that sets
the <a class="xref" href="../Lucene.Net/Lucene.Net.Analysis.TokenAttributes.KeywordAttribute.html">KeywordAttribute</a> before this <a class="xref" href="../Lucene.Net/Lucene.Net.Analysis.TokenStream.html">TokenStream</a>.
</p>
<p>
NOTE: Input is expected to be casefolded for Greek (including folding of final
sigma to sigma), and with diacritics removed. This can be achieved by using 
either <a class="xref" href="Lucene.Net.Analysis.El.GreekLowerCaseFilter.html">GreekLowerCaseFilter</a> or ICUFoldingFilter before <a class="xref" href="Lucene.Net.Analysis.El.GreekStemFilter.html">GreekStemFilter</a>.</p>
<div class="lucene-block lucene-experimental">This is a Lucene.NET EXPERIMENTAL API, use at your own risk</div><p>
</section>
      <h4><a class="xref" href="Lucene.Net.Analysis.El.GreekStemFilterFactory.html">GreekStemFilterFactory</a></h4>
      <section><p>Factory for <a class="xref" href="Lucene.Net.Analysis.El.GreekStemFilter.html">GreekStemFilter</a>. </p>
<pre><code>&lt;fieldType name=&quot;text_gstem&quot; class=&quot;solr.TextField&quot; positionIncrementGap=&quot;100&quot;>
  &lt;analyzer>
    &lt;tokenizer class=&quot;solr.StandardTokenizerFactory&quot;/>
    &lt;filter class=&quot;solr.GreekLowerCaseFilterFactory&quot;/>
    &lt;filter class=&quot;solr.GreekStemFilterFactory&quot;/>
  &lt;/analyzer>
&lt;/fieldType></code></pre>
</section>
      <h4><a class="xref" href="Lucene.Net.Analysis.El.GreekStemmer.html">GreekStemmer</a></h4>
      <section><p>A stemmer for Greek words, according to: <code>Development of a Stemmer for the
Greek Language.</code> Georgios Ntais
<p>
NOTE: Input is expected to be casefolded for Greek (including folding of final
sigma to sigma), and with diacritics removed. This can be achieved with 
either <a class="xref" href="Lucene.Net.Analysis.El.GreekLowerCaseFilter.html">GreekLowerCaseFilter</a> or ICUFoldingFilter.</p>
<div class="lucene-block lucene-experimental">This is a Lucene.NET EXPERIMENTAL API, use at your own risk</div><p>
</section>
</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/blob/docs/4.8.0-beta00008/src/Lucene.Net.Analysis.Common/Analysis/El/package.md/#L2" class="contribution-link">Improve this Doc</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>
