﻿<!DOCTYPE html>
<!--[if IE]><![endif]-->
<html>
  
  <head>
    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
    <title>Class ChineseAnalyzer
   | Apache Lucene.NET 4.8.0-beta00013 Documentation </title>
    <meta name="viewport" content="width=device-width">
    <meta name="title" content="Class ChineseAnalyzer
   | 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="analysis-common/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.Analysis.Cn.ChineseAnalyzer">
  
  
  <h1 id="Lucene_Net_Analysis_Cn_ChineseAnalyzer" data-uid="Lucene.Net.Analysis.Cn.ChineseAnalyzer" class="text-break">Class ChineseAnalyzer
  </h1>
  <div class="markdown level0 summary"><p>An <span class="xref">Lucene.Net.Analysis.Analyzer</span> that tokenizes text with <a class="xref" href="Lucene.Net.Analysis.Cn.ChineseTokenizer.html">ChineseTokenizer</a> and
filters with <a class="xref" href="Lucene.Net.Analysis.Cn.ChineseFilter.html">ChineseFilter</a></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"><span class="xref">Lucene.Net.Analysis.Analyzer</span></div>
    <div class="level2"><span class="xref">ChineseAnalyzer</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="https://lucenenet.apache.org/docs/4.8.0-beta00013/api/core/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="https://lucenenet.apache.org/docs/4.8.0-beta00013/api/core/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="https://lucenenet.apache.org/docs/4.8.0-beta00013/api/core/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="https://lucenenet.apache.org/docs/4.8.0-beta00013/api/core/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="https://lucenenet.apache.org/docs/4.8.0-beta00013/api/core/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="https://lucenenet.apache.org/docs/4.8.0-beta00013/api/core/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="https://lucenenet.apache.org/docs/4.8.0-beta00013/api/core/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="https://lucenenet.apache.org/docs/4.8.0-beta00013/api/core/Lucene.Net.Analysis.Analyzer.html#Lucene_Net_Analysis_Analyzer_GetPositionIncrementGap_System_String_">Analyzer.GetPositionIncrementGap(String)</a>
    </div>
    <div>
      <a class="xref" href="https://lucenenet.apache.org/docs/4.8.0-beta00013/api/core/Lucene.Net.Analysis.Analyzer.html#Lucene_Net_Analysis_Analyzer_GetOffsetGap_System_String_">Analyzer.GetOffsetGap(String)</a>
    </div>
    <div>
      <span class="xref">Lucene.Net.Analysis.Analyzer.Strategy</span>
    </div>
    <div>
      <span class="xref">Lucene.Net.Analysis.Analyzer.Dispose()</span>
    </div>
    <div>
      <a class="xref" href="https://lucenenet.apache.org/docs/4.8.0-beta00013/api/core/Lucene.Net.Analysis.Analyzer.html#Lucene_Net_Analysis_Analyzer_Dispose_System_Boolean_">Analyzer.Dispose(Boolean)</a>
    </div>
    <div>
      <span class="xref">Lucene.Net.Analysis.Analyzer.GLOBAL_REUSE_STRATEGY</span>
    </div>
    <div>
      <span class="xref">Lucene.Net.Analysis.Analyzer.PER_FIELD_REUSE_STRATEGY</span>
    </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.Cn.html">Lucene.Net.Analysis.Cn</a></h6>
  <h6><strong>Assembly</strong>: Lucene.Net.Analysis.Common.dll</h6>
  <h5 id="Lucene_Net_Analysis_Cn_ChineseAnalyzer_syntax">Syntax</h5>
  <div class="codewrapper">
    <pre><code class="lang-csharp hljs">[Obsolete(&quot;(3.1) Use StandardAnalyzer instead, which has the same functionality.&quot;)]
public sealed class ChineseAnalyzer : Analyzer, IDisposable</code></pre>
  </div>
  <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_Analysis_Cn_ChineseAnalyzer_CreateComponents_System_String_System_IO_TextReader_.md&amp;value=---%0Auid%3A%20Lucene.Net.Analysis.Cn.ChineseAnalyzer.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/NightOwl888/lucenenet/blob/fix/apidocs-layout/src/Lucene.Net.Analysis.Common/Analysis/Cn/ChineseAnalyzer.cs/#L40">View Source</a>
  </span>
  <a id="Lucene_Net_Analysis_Cn_ChineseAnalyzer_CreateComponents_" data-uid="Lucene.Net.Analysis.Cn.ChineseAnalyzer.CreateComponents*"></a>
  <h4 id="Lucene_Net_Analysis_Cn_ChineseAnalyzer_CreateComponents_System_String_System_IO_TextReader_" data-uid="Lucene.Net.Analysis.Cn.ChineseAnalyzer.CreateComponents(System.String,System.IO.TextReader)">CreateComponents(String, TextReader)</h4>
  <div class="markdown level1 summary"><p>Creates
<span class="xref">Lucene.Net.Analysis.TokenStreamComponents</span>
used to tokenize 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><span class="xref">Lucene.Net.Analysis.TokenStreamComponents</span></td>
        <td><span class="xref">Lucene.Net.Analysis.TokenStreamComponents</span>
           built from a <a class="xref" href="Lucene.Net.Analysis.Cn.ChineseTokenizer.html">ChineseTokenizer</a> filtered with
<a class="xref" href="Lucene.Net.Analysis.Cn.ChineseFilter.html">ChineseFilter</a> </td>
      </tr>
    </tbody>
  </table>
  <h5 class="overrides">Overrides</h5>
  <div><a class="xref" href="https://lucenenet.apache.org/docs/4.8.0-beta00013/api/core/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-beta00013/websites/apidocs/apiSpec/new?filename=Lucene_Net_Analysis_Cn_ChineseAnalyzer.md&amp;value=---%0Auid%3A%20Lucene.Net.Analysis.Cn.ChineseAnalyzer%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.Analysis.Common/Analysis/Cn/ChineseAnalyzer.cs/#L29" 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>
