<?xml version="1.0" encoding="utf-8"?><?xml-stylesheet type='text/xsl' href='http://eddyzhoufeng.spaces.live.com/mmm2008-07-24_12.50/rsspretty.aspx?rssquery=en-US;http%3a%2f%2feddyzhoufeng.spaces.live.com%2fcategory%2f%e6%90%9c%e7%b4%a2%e5%bc%95%e6%93%8e%2ffeed.rss' version='1.0'?><rss version="2.0" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:msn="http://schemas.microsoft.com/msn/spaces/2005/rss" xmlns:live="http://schemas.microsoft.com/live/spaces/2006/rss" xmlns:dcterms="http://purl.org/dc/terms/" xmlns:cf="http://www.microsoft.com/schemas/rss/core/2005" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>流　　浪　　的　　枫　　之　　羽: 搜索引擎</title><description /><link>http://eddyzhoufeng.spaces.live.com/?_c11_BlogPart_BlogPart=blogview&amp;_c=BlogPart&amp;partqs=cat%25E6%2590%259C%25E7%25B4%25A2%25E5%25BC%2595%25E6%2593%258E</link><language>en-US</language><pubDate>Tue, 02 Sep 2008 03:49:30 GMT</pubDate><lastBuildDate>Tue, 02 Sep 2008 03:49:30 GMT</lastBuildDate><generator>Microsoft Spaces v1.1</generator><docs>http://www.rssboard.org/rss-specification</docs><ttl>60</ttl><cf:parentRSS>http://eddyzhoufeng.spaces.live.com/blog/feed.rss</cf:parentRSS><live:type>blogcategory</live:type><live:identity><live:id>-2510522667657978555</live:id><live:alias>eddyzhoufeng</live:alias></live:identity><cf:listinfo><cf:group ns="http://schemas.microsoft.com/live/spaces/2006/rss" element="typelabel" label="Type" /><cf:group ns="http://schemas.microsoft.com/live/spaces/2006/rss" element="tag" label="Tag" /><cf:group element="category" label="Category" /><cf:sort element="pubDate" label="Date" data-type="date" default="true" /><cf:sort element="title" label="Title" data-type="string" /><cf:sort ns="http://purl.org/rss/1.0/modules/slash/" element="comments" label="Comments" data-type="number" /></cf:listinfo><item><title>讲述Lucene相关站点和书籍- -</title><link>http://eddyzhoufeng.spaces.live.com/Blog/cns!DD28D4EF61AE1D45!824.entry</link><description>&lt;div&gt;
&lt;div&gt;
&lt;p&gt;Introduction to Text Indexing with Apache Jakarta Lucene&lt;br&gt;&lt;a href="http://www.onjava.com/pub/a/onjava/2003/01/15/lucene.html"&gt;&lt;u&gt;&lt;font color="#0000ff"&gt;http://www.onjava.com/pub/a/onjava/2003/01/15/lucene.html&lt;/font&gt;&lt;/u&gt;&lt;/a&gt;
&lt;p&gt;Advanced Text Indexing with Lucene&lt;br&gt;&lt;a href="http://www.onjava.com/pub/a/onjava/2003/03/05/lucene.html"&gt;&lt;u&gt;&lt;font color="#0000ff"&gt;http://www.onjava.com/pub/a/onjava/2003/03/05/lucene.html&lt;/font&gt;&lt;/u&gt;&lt;/a&gt;
&lt;p&gt;关于Chedong的blog(非常著名,汉语)&lt;br&gt;&lt;a href="http://www.chedong.com/tech/lucene.html"&gt;&lt;u&gt;&lt;font color="#0000ff"&gt;http://www.chedong.com/tech/lucene.html&lt;/font&gt;&lt;/u&gt;&lt;/a&gt;
&lt;p&gt;Lucene全文检索实践&lt;br&gt;&lt;a href="http://www.infor96.com/~nio/comments.php?id=84_0_1_0_C"&gt;&lt;u&gt;&lt;font color="#0000ff"&gt;http://www.infor96.com/~nio/comments.php?id=84_0_1_0_C&lt;/font&gt;&lt;/u&gt;&lt;/a&gt;
&lt;p&gt;关于Lucene的基本概念&lt;br&gt;&lt;a href="http://www.cnblogs.com/lucene/archive/2004/12/20/79804.html"&gt;&lt;u&gt;&lt;font color="#0000ff"&gt;http://www.cnblogs.com/lucene/archive/2004/12/20/79804.html&lt;/font&gt;&lt;/u&gt;&lt;/a&gt;
&lt;p&gt;Lucene使用者沙龙(为Chedong和一些朋友的沙龙,有ppt和&lt;a href="http://blog.cnblog.org/archives/2005/07/luceneaecee.html"&gt;&lt;u&gt;&lt;font color="#0000ff"&gt;http://blog.cnblog.org/archives/2005/07/luceneaecee.html&lt;/font&gt;&lt;/u&gt;&lt;/a&gt;
&lt;p&gt;Lucene研究之一——起源、现状及初步应用&lt;a href="http://jalorsoft.com/holen/holen_lucene_01.html"&gt;&lt;u&gt;&lt;font color="#0000ff"&gt;http://jalorsoft.com/holen/holen_lucene_01.html&lt;/font&gt;&lt;/u&gt;&lt;/a&gt;
&lt;p&gt;Lucene研究之二——系统结构分析初步(已阅)&lt;br&gt;&lt;a href="http://jalorsoft.com/holen/holen_lucene_02.html"&gt;&lt;u&gt;&lt;font color="#0000ff"&gt;http://jalorsoft.com/holen/holen_lucene_02.html&lt;/font&gt;&lt;/u&gt;&lt;/a&gt;
&lt;p&gt;系统讲了Lucene架构(英文)&lt;br&gt;&lt;a href="http://www-igm.univ-mlv.fr/~dr/XPOSE2003/lucene/node1.html"&gt;&lt;u&gt;&lt;font color="#0000ff"&gt;http://www-igm.univ-mlv.fr/~dr/XPOSE2003/lucene/node1.html&lt;/font&gt;&lt;/u&gt;&lt;/a&gt;
&lt;p&gt;Doug Cutting(Lucene作者)做的关于Lucene的架构解说&lt;br&gt;&lt;a href="http://lucene.sourceforge.net/talks/pisa/"&gt;&lt;u&gt;&lt;font color="#0000ff"&gt;http://lucene.sourceforge.net/talks/pisa/&lt;/font&gt;&lt;/u&gt;&lt;/a&gt;
&lt;p&gt;English StopWords列表&lt;br&gt;&lt;a href="http://www.onjava.com/onjava/2003/01/15/examples/EnglishStopWords.txt"&gt;&lt;u&gt;&lt;font color="#0000ff"&gt;http://www.onjava.com/onjava/2003/01/15/examples/EnglishStopWords.txt&lt;/font&gt;&lt;/u&gt;&lt;/a&gt;
&lt;p&gt;书籍:
&lt;p&gt;Lucene in action&lt;/div&gt;&lt;/div&gt;&lt;img src="http://c.services.spaces.live.com/CollectionWebService/c.gif?cid=-2510522667657978555&amp;page=RSS%3a+%e8%ae%b2%e8%bf%b0Lucene%e7%9b%b8%e5%85%b3%e7%ab%99%e7%82%b9%e5%92%8c%e4%b9%a6%e7%b1%8d-+-&amp;referrer=" width="1px" height="1px" border="0" alt=""&gt;&lt;img style="position:absolute" alt="" width="0px" height="0px" src="http://c.live.com/c.gif?NC=31263&amp;amp;NA=1149&amp;amp;PI=73329&amp;amp;RF=&amp;amp;DI=3919&amp;amp;PS=85545&amp;amp;TP=eddyzhoufeng.spaces.live.com&amp;amp;GT1=eddyzhoufeng"&gt;</description><comments>http://eddyzhoufeng.spaces.live.com/Blog/cns!DD28D4EF61AE1D45!824.entry#comment</comments><guid isPermaLink="true">http://eddyzhoufeng.spaces.live.com/Blog/cns!DD28D4EF61AE1D45!824.entry</guid><pubDate>Sun, 09 Dec 2007 04:01:19 GMT</pubDate><slash:comments>0</slash:comments><msn:type>blogentry</msn:type><live:type>blogentry</live:type><live:typelabel>Blog entry</live:typelabel><wfw:commentRss>http://eddyzhoufeng.spaces.live.com/blog/cns!DD28D4EF61AE1D45!824/comments/feed.rss</wfw:commentRss><wfw:comment>http://eddyzhoufeng.spaces.live.com/Blog/cns!DD28D4EF61AE1D45!824.entry#comment</wfw:comment><dcterms:modified>2007-12-09T04:01:19Z</dcterms:modified></item><item><title>介绍个知识点：什么叫倒排索引?</title><link>http://eddyzhoufeng.spaces.live.com/Blog/cns!DD28D4EF61AE1D45!791.entry</link><description>&lt;div&gt;在多篇文章中寻找一个词有两种方法，一种是字符串匹配，即在每篇文章中做字符串匹配，查找该字符串是否存在。字符串匹配有多种方法，可以参见《算法导论》的32章《String Matching》，这里就不细表了。
&lt;p&gt;    另一种方法就是先做倒排索引，再查找。什么是倒排索引呢？请看下面的例子：&lt;br&gt;假设文章1的内容是：aaa bbb ccc ddd&lt;br&gt;文章2的内容是：bbb ddd yyy
&lt;p&gt;    上面的对应关系是：“文章号”对“文章中所有关键词”。倒排索引把这个关系倒过来，变成：“关键词”对“拥有该关键词的所有文章号”。文章1，2经过倒排后变成：&lt;br&gt;aaa 1&lt;br&gt;bbb 1,2&lt;br&gt;ccc 1&lt;br&gt;ddd 1,2&lt;br&gt;yyy 2
&lt;p&gt;    当建好了上面所示的倒排索引后，一旦我们要查找哪些文章中含有某个关键字时，只需取出该关键词所对应的文章号就行了。&lt;br&gt;    比如我们查找aaa，返回1.查找ddd,返回1，2
&lt;p&gt;    一个使用倒排索引的经典例子是：但凡英文的技术书籍，书的最后面都有一个index，你可以通过它找到一个关键词出现在哪些页面里。这个就是关键词对拥有该关键词的页面的索引。
&lt;p&gt;    web搜索引擎中所用的倒排索引就是这样的。首先对一篇文章分词，去掉“的、啊、哦”等等停用词，然后对剩下的关键词建立倒排索引。&lt;/div&gt;&lt;img src="http://c.services.spaces.live.com/CollectionWebService/c.gif?cid=-2510522667657978555&amp;page=RSS%3a+%e4%bb%8b%e7%bb%8d%e4%b8%aa%e7%9f%a5%e8%af%86%e7%82%b9%ef%bc%9a%e4%bb%80%e4%b9%88%e5%8f%ab%e5%80%92%e6%8e%92%e7%b4%a2%e5%bc%95%3f&amp;referrer=" width="1px" height="1px" border="0" alt=""&gt;&lt;img style="position:absolute" alt="" width="0px" height="0px" src="http://c.live.com/c.gif?NC=31263&amp;amp;NA=1149&amp;amp;PI=73329&amp;amp;RF=&amp;amp;DI=3919&amp;amp;PS=85545&amp;amp;TP=eddyzhoufeng.spaces.live.com&amp;amp;GT1=eddyzhoufeng"&gt;</description><comments>http://eddyzhoufeng.spaces.live.com/Blog/cns!DD28D4EF61AE1D45!791.entry#comment</comments><guid isPermaLink="true">http://eddyzhoufeng.spaces.live.com/Blog/cns!DD28D4EF61AE1D45!791.entry</guid><pubDate>Thu, 25 Oct 2007 17:01:28 GMT</pubDate><slash:comments>0</slash:comments><msn:type>blogentry</msn:type><live:type>blogentry</live:type><live:typelabel>Blog entry</live:typelabel><wfw:commentRss>http://eddyzhoufeng.spaces.live.com/blog/cns!DD28D4EF61AE1D45!791/comments/feed.rss</wfw:commentRss><wfw:comment>http://eddyzhoufeng.spaces.live.com/Blog/cns!DD28D4EF61AE1D45!791.entry#comment</wfw:comment><dcterms:modified>2007-10-25T17:01:28Z</dcterms:modified></item><item><title>Lucene的学习2(转)</title><link>http://eddyzhoufeng.spaces.live.com/Blog/cns!DD28D4EF61AE1D45!786.entry</link><description>&lt;div&gt;
&lt;h1 style="margin:17pt 0cm 16.5pt 21.25pt;text-indent:-21.25pt;tab-stops:list 21.25pt"&gt;&lt;span lang=EN-US style="font-size:12pt;line-height:240%"&gt;&lt;span style=""&gt;3&lt;span style="font:7pt 'Times New Roman'"&gt;          &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:12pt;line-height:240%;font-family:宋体"&gt;索引的建立&lt;/span&gt; &lt;span lang=EN-US style="font-size:12pt;line-height:240%"&gt;&lt;/span&gt;&lt;/h1&gt;
&lt;p style="margin:0cm 0cm 0pt"&gt;&lt;span lang=EN-US&gt;  &lt;/span&gt;
&lt;p style="margin:0cm 0cm 0pt;text-indent:21pt;line-height:150%"&gt;&lt;span style="line-height:150%;font-family:宋体"&gt;我们从索引的建立入手：&lt;/span&gt; &lt;span lang=EN-US style="line-height:150%;font-family:'Courier New'"&gt;&lt;/span&gt;
&lt;p style="margin:0cm 0cm 0pt;text-indent:21pt;line-height:150%"&gt;&lt;span style="line-height:150%;font-family:宋体"&gt;我们建立一个&lt;/span&gt; &lt;span lang=EN-US style="line-height:150%;font-family:'Courier New'"&gt;lucene&lt;/span&gt; &lt;span style="line-height:150%;font-family:宋体"&gt;的索引时必须先建立该索引文件存放的位置，看一下代码：&lt;/span&gt; &lt;span lang=EN-US style="line-height:150%;font-family:'Courier New'"&gt;&lt;/span&gt;
&lt;p style="margin:0cm 0cm 0pt;text-indent:21pt;line-height:150%"&gt;&lt;span lang=EN-US style="line-height:150%;font-family:'Courier New'"&gt;IndexWriter writer = null;&lt;/span&gt; 
&lt;p style="margin:0cm 0cm 0pt;text-indent:21pt;line-height:150%"&gt;&lt;span lang=EN-US style="line-height:150%;font-family:'Courier New'"&gt;writer = new IndexWriter(&amp;quot;c:\\index&amp;quot;, new CJKAnalyzer(), true);&lt;/span&gt; 
&lt;p style="margin:0cm 0cm 0pt;text-indent:21pt;line-height:150%"&gt;&lt;span style="line-height:150%;font-family:宋体"&gt;这段代码就时建立一个索引前所必须的操作，先声明这个&lt;/span&gt; &lt;span lang=EN-US style="line-height:150%;font-family:'Courier New'"&gt;IndexWriter&lt;/span&gt; &lt;span style="line-height:150%;font-family:宋体"&gt;，实例化它你必须传入三个参数。他们分别代表：你要建立索引文件的存放位置、你要使用索引建立的分词方法、是否重新建立索引。这样你就告诉&lt;/span&gt; &lt;span lang=EN-US style="line-height:150%;font-family:'Courier New'"&gt;lucene&lt;/span&gt; &lt;span style="line-height:150%;font-family:宋体"&gt;我要在&lt;/span&gt; &lt;span lang=EN-US style="line-height:150%;font-family:'Courier New'"&gt;c&lt;/span&gt; &lt;span style="line-height:150%;font-family:宋体"&gt;盘的&lt;/span&gt; &lt;span lang=EN-US style="line-height:150%;font-family:'Courier New'"&gt;index&lt;/span&gt; &lt;span style="line-height:150%;font-family:宋体"&gt;目录下建立索引文件，我要使用车东老师的二分词算法做分析器、我要在这个目录下删除以前的索引或任何文件创立我的索引文件。&lt;/span&gt; &lt;span lang=EN-US style="line-height:150%;font-family:'Courier New'"&gt;&lt;/span&gt;
&lt;p style="margin:0cm 0cm 0pt;text-indent:21pt;line-height:150%"&gt;&lt;span style="line-height:150%;font-family:宋体"&gt;索引的建立有三种方式，让我一一道来：&lt;/span&gt; &lt;span lang=EN-US style="line-height:150%;font-family:'Courier New'"&gt;&lt;/span&gt;
&lt;p style="margin:0cm 0cm 0pt;text-indent:21pt;line-height:150%"&gt;&lt;span lang=EN-US style="line-height:150%;font-family:'Courier New'"&gt;1&lt;/span&gt; &lt;span style="line-height:150%;font-family:宋体"&gt;、&lt;/span&gt; &lt;span lang=EN-US style="line-height:150%;font-family:'Courier New'"&gt;new IndexWriter(new RAMDirectory(), new StandardAnalyzer(), true);&lt;/span&gt; 
&lt;p style="margin:0cm 0cm 0pt;text-indent:21pt;line-height:150%"&gt;&lt;span style="line-height:150%;font-family:宋体"&gt;在内存中建立索引，速度最快但是耗资源，而且重启就没了。&lt;/span&gt; &lt;span lang=EN-US style="line-height:150%;font-family:'Courier New'"&gt;&lt;/span&gt;
&lt;p style="margin:0cm 0cm 0pt;text-indent:21pt;line-height:150%"&gt;&lt;span lang=EN-US style="line-height:150%;font-family:'Courier New'"&gt;2&lt;/span&gt; &lt;span style="line-height:150%;font-family:宋体"&gt;、&lt;/span&gt; &lt;span lang=EN-US style="line-height:150%;font-family:'Courier New'"&gt;new IndexWriter(FSDirectory.getDirectory(path, true), new StandardAnalyzer(), true);&lt;/span&gt; 
&lt;p style="margin:0cm 0cm 0pt;text-indent:21pt;line-height:150%"&gt;&lt;span style="line-height:150%;font-family:宋体"&gt;在文件系统中建立索引，这里有两个参数，分别是：建立索引的路径、是否要删除当前目录下的文件重新建立索引。&lt;/span&gt; &lt;span lang=EN-US style="line-height:150%;font-family:'Courier New'"&gt;&lt;/span&gt;
&lt;p style="margin:0cm 0cm 0pt;text-indent:21pt;line-height:150%"&gt;&lt;span lang=EN-US style="line-height:150%;font-family:'Courier New'"&gt;3&lt;/span&gt; &lt;span style="line-height:150%;font-family:宋体"&gt;、&lt;/span&gt; &lt;span lang=EN-US style="line-height:150%;font-family:'Courier New'"&gt;new IndexWriter(&amp;quot;c:\\index&amp;quot;, new CJKAnalyzer(), true);&lt;/span&gt; 
&lt;p style="margin:0cm 0cm 0pt;text-indent:21pt;line-height:150%"&gt;&lt;span style="line-height:150%;font-family:宋体"&gt;最常见的一种，在制定目录下建立索引，看了源码你就知道这种方法也是用的第二种方式。&lt;/span&gt; &lt;span lang=EN-US style="line-height:150%;font-family:'Courier New'"&gt;Lucene&lt;/span&gt; &lt;span style="line-height:150%;font-family:宋体"&gt;的源码：&lt;/span&gt; &lt;span lang=EN-US style="line-height:150%;font-family:'Courier New'"&gt;&lt;/span&gt;
&lt;p style="margin:0cm 0cm 0pt;text-indent:21pt;line-height:150%"&gt;&lt;span lang=EN-US style="line-height:150%;font-family:'Courier New'"&gt;public IndexWriter(String path, Analyzer a, boolean create)&lt;/span&gt; 
&lt;p style="margin:0cm 0cm 0pt;text-indent:21pt;line-height:150%"&gt;&lt;span lang=EN-US style="line-height:150%;font-family:'Courier New'"&gt;&lt;span style=""&gt;       &lt;/span&gt;throws IOException {&lt;/span&gt; 
&lt;p style="margin:0cm 0cm 0pt;line-height:150%"&gt;&lt;span lang=EN-US style="line-height:150%;font-family:'Courier New'"&gt;&lt;span style=""&gt; &lt;/span&gt;this(FSDirectory.getDirectory(path, create), a, create, true);&lt;/span&gt; 
&lt;p style="margin:0cm 0cm 0pt;text-indent:21pt;line-height:150%"&gt;&lt;span lang=EN-US style="line-height:150%;font-family:'Courier New'"&gt;&lt;span style=""&gt;  &lt;/span&gt;}&lt;/span&gt; 
&lt;p style="margin:0cm 0cm 0pt;text-indent:21pt;line-height:150%"&gt;&lt;span style="line-height:150%;font-family:宋体"&gt;我想的没错。&lt;/span&gt; &lt;span lang=EN-US style="line-height:150%;font-family:'Courier New'"&gt;&lt;/span&gt;
&lt;p style="margin:0cm 0cm 0pt;text-indent:21pt;line-height:150%"&gt;&lt;span lang=EN-US style="line-height:150%;font-family:'Courier New'"&gt;Indexwriter&lt;/span&gt; &lt;span style="line-height:150%;font-family:宋体"&gt;性能调整参数：&lt;/span&gt; &lt;span lang=EN-US style="line-height:150%;font-family:'Courier New'"&gt;&lt;/span&gt;
&lt;p style="margin:0cm 0cm 0pt;text-indent:21pt;line-height:150%"&gt;&lt;b&gt;&lt;span style="line-height:150%;font-family:宋体"&gt;第一个优化的参数&lt;/span&gt; &lt;/b&gt;&lt;span style="line-height:150%;font-family:宋体"&gt;：&lt;/span&gt; &lt;span lang=EN-US style="line-height:150%;font-family:'Courier New'"&gt;mergeFactor &lt;/span&gt;&lt;span style="line-height:150%;font-family:宋体"&gt;这个参数用于控制&lt;/span&gt; &lt;span lang=EN-US style="line-height:150%;font-family:'Courier New'"&gt;lucene&lt;/span&gt; &lt;span style="line-height:150%;font-family:宋体"&gt;在把索引从内存写入到磁盘上的文件系统时内存最大的&lt;/span&gt; &lt;span lang=EN-US style="line-height:150%;font-family:'Courier New'"&gt;Document&lt;/span&gt; &lt;span style="line-height:150%;font-family:宋体"&gt;对象的数量。这个数要根据你的计算机设置，默认情况下是&lt;/span&gt; &lt;span lang=EN-US style="line-height:150%;font-family:'Courier New'"&gt;10&lt;/span&gt; &lt;span style="line-height:150%;font-family:宋体"&gt;。&lt;/span&gt; &lt;span lang=EN-US style="line-height:150%;font-family:'Courier New'"&gt;&lt;/span&gt;
&lt;p style="margin:0cm 0cm 0pt;line-height:150%"&gt;&lt;span lang=EN-US style="line-height:150%;font-family:'Courier New'"&gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;/span&gt;&lt;b&gt;&lt;span style="line-height:150%;font-family:宋体"&gt;第二个优化的参数&lt;/span&gt; &lt;/b&gt;&lt;span style="line-height:150%;font-family:宋体"&gt;：&lt;/span&gt; &lt;span lang=EN-US style="line-height:150%;font-family:'Courier New'"&gt;maxMergeFactor &lt;/span&gt;&lt;span style="line-height:150%;font-family:宋体"&gt;这个参数用来设置当有多少个&lt;/span&gt; &lt;span lang=EN-US style="line-height:150%;font-family:'Courier New'"&gt;Segment&lt;/span&gt; &lt;span style="line-height:150%;font-family:宋体"&gt;时进行合并操作。当然我们知道当索引文件太多的话其检索的速度就会很慢，所以我们要当文件数量一定时让它进行索引的合并。这样就可以加快索引速度，但是这个值要根据你的情况而定。当文档数量较多时我们将值设大些，当文档数量较少时我们将值设小些。&lt;/span&gt; &lt;span lang=EN-US style="line-height:150%;font-family:'Courier New'"&gt;&lt;/span&gt;
&lt;p style="margin:0cm 0cm 0pt;text-indent:21pt;line-height:150%"&gt;&lt;b&gt;&lt;span style="line-height:150%;font-family:宋体"&gt;第三个优化的参数&lt;/span&gt; &lt;/b&gt;&lt;span style="line-height:150%;font-family:宋体"&gt;：&lt;/span&gt; &lt;span lang=EN-US style="line-height:150%;font-family:'Courier New'"&gt;minMergeDocs &lt;/span&gt;&lt;span style="line-height:150%;font-family:宋体"&gt;这个参数用于控制内存中文档的数量。&lt;/span&gt; &lt;span lang=EN-US style="line-height:150%;font-family:'Courier New'"&gt;&lt;/span&gt;
&lt;p style="margin:0cm 0cm 0pt;text-indent:21pt;line-height:150%"&gt;&lt;span lang=EN-US style="line-height:150%;font-family:'Courier New'"&gt;  &lt;/span&gt;
&lt;p style="margin:0cm 0cm 0pt;text-indent:21pt;line-height:150%"&gt;&lt;span style="line-height:150%;font-family:宋体"&gt;这样我们建立索引已经完成，接下来我们要建立&lt;/span&gt; &lt;span lang=EN-US style="line-height:150%;font-family:'Courier New'"&gt;Document&lt;/span&gt; &lt;span style="line-height:150%;font-family:宋体"&gt;对象，因为你必须告诉我要搜索什么吧！好了，看看源码：&lt;/span&gt; &lt;span lang=EN-US style="line-height:150%;font-family:'Courier New'"&gt;&lt;/span&gt;
&lt;p style="margin:0cm 0cm 0pt;text-indent:21pt;line-height:150%"&gt;&lt;span lang=EN-US style="line-height:150%;font-family:'Courier New'"&gt;File file = new File(&amp;quot;1.txt&amp;quot;); &lt;/span&gt;
&lt;p style="margin:0cm 0cm 0pt;text-indent:21pt;line-height:150%"&gt;&lt;span lang=EN-US style="line-height:150%;font-family:'Courier New'"&gt;Document doc = new Document();&lt;/span&gt; 
&lt;p style="margin:0cm 0cm 0pt;text-indent:21pt;line-height:150%"&gt;&lt;span lang=EN-US style="line-height:150%;font-family:'Courier New'"&gt;doc.add(Field.UnIndexed(&amp;quot;filename&amp;quot;, file.getName()));&lt;/span&gt; 
&lt;p style="margin:0cm 0cm 0pt;text-indent:21pt;line-height:150%"&gt;&lt;span lang=EN-US style="line-height:150%;font-family:'Courier New'"&gt;FileInputStream fis = new FileInputStream(file);&lt;/span&gt; 
&lt;p style="margin:0cm 0cm 0pt;text-indent:21pt;line-height:150%"&gt;&lt;span lang=EN-US style="line-height:150%;font-family:'Courier New'"&gt;byte[] b = new byte[fis.available()];&lt;/span&gt; 
&lt;p style="margin:0cm 0cm 0pt;text-indent:21pt;line-height:150%"&gt;&lt;span lang=EN-US style="line-height:150%;font-family:'Courier New'"&gt;fis.read(b);&lt;/span&gt; 
&lt;p style="margin:0cm 0cm 0pt;text-indent:21pt;line-height:150%"&gt;&lt;span lang=EN-US style="line-height:150%;font-family:'Courier New'"&gt;String content = new String(b);&lt;/span&gt; 
&lt;p style="margin:0cm 0cm 0pt;text-indent:21pt;line-height:150%"&gt;&lt;span lang=EN-US style="line-height:150%;font-family:'Courier New'"&gt;doc.add(Field.Text(&amp;quot;content&amp;quot;, content));&lt;/span&gt; 
&lt;p style="margin:0cm 0cm 0pt;text-indent:21pt;line-height:150%"&gt;&lt;span lang=EN-US style="line-height:150%;font-family:'Courier New'"&gt;fis.close();&lt;/span&gt; 
&lt;p style="margin:0cm 0cm 0pt;text-indent:21pt;line-height:150%"&gt;&lt;span style="line-height:150%;font-family:宋体"&gt;以上我们就完成了将&lt;/span&gt; &lt;span lang=EN-US style="line-height:150%;font-family:'Courier New'"&gt;1.txt&lt;/span&gt; &lt;span style="line-height:150%;font-family:宋体"&gt;文件放到我们的&lt;/span&gt; &lt;span lang=EN-US style="line-height:150%;font-family:'Courier New'"&gt;Document&lt;/span&gt; &lt;span style="line-height:150%;font-family:宋体"&gt;对象了。这里我们用了&lt;/span&gt; &lt;span lang=EN-US style="line-height:150%;font-family:'Courier New'"&gt;Field.Text();&lt;/span&gt; &lt;span style="line-height:150%;font-family:宋体"&gt;这样的操作和&lt;/span&gt; &lt;span lang=EN-US style="line-height:150%;font-family:'Courier New'"&gt;doc.add();&lt;/span&gt; &lt;span style="line-height:150%;font-family:宋体"&gt;这样的方法建立的。这也是建立索引的必须。&lt;/span&gt; &lt;span lang=EN-US style="line-height:150%;font-family:'Courier New'"&gt;&lt;/span&gt;
&lt;p style="margin:0cm 0cm 0pt;text-indent:21pt;line-height:150%"&gt;&lt;span style="line-height:150%;font-family:宋体"&gt;稍微介绍一下&lt;/span&gt; &lt;span lang=EN-US style="line-height:150%;font-family:'Courier New'"&gt;Field&lt;/span&gt; &lt;span style="line-height:150%;font-family:宋体"&gt;，它就是你要建立索引的字段。它分别有&lt;/span&gt; &lt;span lang=EN-US style="line-height:150%;font-family:'Courier New'"&gt;&lt;/span&gt;
&lt;table style="border-right:medium none;border-top:medium none;border-left:medium none;border-bottom:medium none;border-collapse:collapse" cellspacing=0 cellpadding=0 border=1&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td style="border-right:windowtext 1pt solid;padding-right:5.4pt;border-top:windowtext 1pt solid;padding-left:5.4pt;background:#8c8c8c;padding-bottom:0cm;border-left:windowtext 1pt solid;width:155.75pt;padding-top:0cm;border-bottom:windowtext 1pt solid" width=208&gt;
&lt;p style="margin:0cm 0cm 0pt;text-align:center" align=center&gt;&lt;b&gt;&lt;span style="font-family:宋体"&gt;类型&lt;/span&gt; &lt;/b&gt;&lt;b&gt;&lt;span lang=EN-US style="font-family:'Courier New'"&gt;/&lt;/span&gt; &lt;/b&gt;&lt;b&gt;&lt;span style="font-family:宋体"&gt;方法&lt;/span&gt; &lt;/b&gt;&lt;b&gt;&lt;span lang=EN-US style="font-family:'Courier New'"&gt;&lt;/span&gt;&lt;/b&gt;
&lt;td style="border-right:windowtext 1pt solid;padding-right:5.4pt;border-top:windowtext 1pt solid;padding-left:5.4pt;background:#8c8c8c;padding-bottom:0cm;border-left:#f4f4f4;width:38.65pt;padding-top:0cm;border-bottom:windowtext 1pt solid" width=52&gt;
&lt;p style="margin:0cm 0cm 0pt;text-align:center" align=center&gt;&lt;b&gt;&lt;span style="font-family:宋体"&gt;是否分词&lt;/span&gt; &lt;/b&gt;&lt;b&gt;&lt;span lang=EN-US style="font-family:'Courier New'"&gt;&lt;/span&gt;&lt;/b&gt;
&lt;td style="border-right:windowtext 1pt solid;padding-right:5.4pt;border-top:windowtext 1pt solid;padding-left:5.4pt;background:#8c8c8c;padding-bottom:0cm;border-left:#f4f4f4;width:36pt;padding-top:0cm;border-bottom:windowtext 1pt solid" width=48&gt;
&lt;p style="margin:0cm 0cm 0pt;text-align:center" align=center&gt;&lt;b&gt;&lt;span style="font-family:宋体"&gt;是否索引&lt;/span&gt; &lt;/b&gt;&lt;b&gt;&lt;span lang=EN-US style="font-family:'Courier New'"&gt;&lt;/span&gt;&lt;/b&gt;
&lt;td style="border-right:windowtext 1pt solid;padding-right:5.4pt;border-top:windowtext 1pt solid;padding-left:5.4pt;background:#8c8c8c;padding-bottom:0cm;border-left:#f4f4f4;width:36pt;padding-top:0cm;border-bottom:windowtext 1pt solid" width=48&gt;
&lt;p style="margin:0cm 0cm 0pt;text-align:center" align=center&gt;&lt;b&gt;&lt;span style="font-family:宋体"&gt;是否存储&lt;/span&gt; &lt;/b&gt;&lt;b&gt;&lt;span lang=EN-US style="font-family:'Courier New'"&gt;&lt;/span&gt;&lt;/b&gt;
&lt;td style="border-right:windowtext 1pt solid;padding-right:5.4pt;border-top:windowtext 1pt solid;padding-left:5.4pt;background:#8c8c8c;padding-bottom:0cm;border-left:#f4f4f4;width:159.7pt;padding-top:0cm;border-bottom:windowtext 1pt solid" width=213&gt;
&lt;p style="margin:0cm 0cm 0pt;text-align:center" align=center&gt;&lt;b&gt;&lt;span style="font-family:宋体"&gt;常用实例&lt;/span&gt; &lt;/b&gt;&lt;b&gt;&lt;span lang=EN-US style="font-family:'Courier New'"&gt;&lt;/span&gt;&lt;/b&gt;
&lt;tr&gt;
&lt;td style="border-right:windowtext 1pt solid;padding-right:5.4pt;border-top:#f4f4f4;padding-left:5.4pt;padding-bottom:0cm;border-left:windowtext 1pt solid;width:155.75pt;padding-top:0cm;border-bottom:windowtext 1pt solid;background-color:transparent" width=208&gt;
&lt;p style="margin:0cm 0cm 0pt;text-align:center" align=center&gt;&lt;span lang=EN-US style="font-family:'Courier New'"&gt;Keyword(String,String)&lt;/span&gt; 
&lt;p style="margin:0cm 0cm 0pt;text-align:center" align=center&gt;&lt;span lang=EN-US style="font-family:'Courier New'"&gt;Keyword(String,Date)&lt;/span&gt; 
&lt;td style="border-right:windowtext 1pt solid;padding-right:5.4pt;border-top:#f4f4f4;padding-left:5.4pt;padding-bottom:0cm;border-left:#f4f4f4;width:38.65pt;padding-top:0cm;border-bottom:windowtext 1pt solid;background-color:transparent" width=52&gt;
&lt;p style="margin:0cm 0cm 0pt;text-align:center" align=center&gt;&lt;span style="font-family:宋体"&gt;否&lt;/span&gt; &lt;span lang=EN-US style="font-family:'Courier New'"&gt;&lt;/span&gt;
&lt;td style="border-right:windowtext 1pt solid;padding-right:5.4pt;border-top:#f4f4f4;padding-left:5.4pt;padding-bottom:0cm;border-left:#f4f4f4;width:36pt;padding-top:0cm;border-bottom:windowtext 1pt solid;background-color:transparent" width=48&gt;
&lt;p style="margin:0cm 0cm 0pt;text-align:center" align=center&gt;&lt;span style="font-family:宋体"&gt;是&lt;/span&gt; &lt;span lang=EN-US style="font-family:'Courier New'"&gt;&lt;/span&gt;
&lt;td style="border-right:windowtext 1pt solid;padding-right:5.4pt;border-top:#f4f4f4;padding-left:5.4pt;padding-bottom:0cm;border-left:#f4f4f4;width:36pt;padding-top:0cm;border-bottom:windowtext 1pt solid;background-color:transparent" width=48&gt;
&lt;p style="margin:0cm 0cm 0pt;text-align:center" align=center&gt;&lt;span style="font-family:宋体"&gt;是&lt;/span&gt; &lt;span lang=EN-US style="font-family:'Courier New'"&gt;&lt;/span&gt;
&lt;td style="border-right:windowtext 1pt solid;padding-right:5.4pt;border-top:#f4f4f4;padding-left:5.4pt;padding-bottom:0cm;border-left:#f4f4f4;width:159.7pt;padding-top:0cm;border-bottom:windowtext 1pt solid;background-color:transparent" width=213&gt;
&lt;p style="margin:0cm 0cm 0pt;text-align:center" align=center&gt;&lt;span style="font-family:宋体"&gt;电话号码，身份证，人名，地名，日期&lt;/span&gt; &lt;span lang=EN-US style="font-family:'Courier New'"&gt;&lt;/span&gt;
&lt;tr&gt;
&lt;td style="border-right:windowtext 1pt solid;padding-right:5.4pt;border-top:#f4f4f4;padding-left:5.4pt;padding-bottom:0cm;border-left:windowtext 1pt solid;width:155.75pt;padding-top:0cm;border-bottom:windowtext 1pt solid;background-color:transparent" valign=top width=208&gt;
&lt;p style="margin:0cm 0cm 0pt;line-height:150%;text-align:center" align=center&gt;&lt;span lang=EN-US style="line-height:150%;font-family:'Courier New'"&gt;Unindexed(String,String)&lt;/span&gt; 
&lt;td style="border-right:windowtext 1pt solid;padding-right:5.4pt;border-top:#f4f4f4;padding-left:5.4pt;padding-bottom:0cm;border-left:#f4f4f4;width:38.65pt;padding-top:0cm;border-bottom:windowtext 1pt solid;background-color:transparent" valign=top width=52&gt;
&lt;p style="margin:0cm 0cm 0pt;line-height:150%;text-align:center" align=center&gt;&lt;span style="line-height:150%;font-family:宋体"&gt;否&lt;/span&gt; &lt;span lang=EN-US style="line-height:150%;font-family:'Courier New'"&gt;&lt;/span&gt;
&lt;td style="border-right:windowtext 1pt solid;padding-right:5.4pt;border-top:#f4f4f4;padding-left:5.4pt;padding-bottom:0cm;border-left:#f4f4f4;width:36pt;padding-top:0cm;border-bottom:windowtext 1pt solid;background-color:transparent" valign=top width=48&gt;
&lt;p style="margin:0cm 0cm 0pt;line-height:150%;text-align:center" align=center&gt;&lt;span style="line-height:150%;font-family:宋体"&gt;否&lt;/span&gt; &lt;span lang=EN-US style="line-height:150%;font-family:'Courier New'"&gt;&lt;/span&gt;
&lt;td style="border-right:windowtext 1pt solid;padding-right:5.4pt;border-top:#f4f4f4;padding-left:5.4pt;padding-bottom:0cm;border-left:#f4f4f4;width:36pt;padding-top:0cm;border-bottom:windowtext 1pt solid;background-color:transparent" valign=top width=48&gt;
&lt;p style="margin:0cm 0cm 0pt;line-height:150%;text-align:center" align=center&gt;&lt;span style="line-height:150%;font-family:宋体"&gt;是&lt;/span&gt; &lt;span lang=EN-US style="line-height:150%;font-family:'Courier New'"&gt;&lt;/span&gt;
&lt;td style="border-right:windowtext 1pt solid;padding-right:5.4pt;border-top:#f4f4f4;padding-left:5.4pt;padding-bottom:0cm;border-left:#f4f4f4;width:159.7pt;padding-top:0cm;border-bottom:windowtext 1pt solid;background-color:transparent" valign=top width=213&gt;
&lt;p style="margin:0cm 0cm 0pt;line-height:150%;text-align:center" align=center&gt;&lt;span style="line-height:150%;font-family:宋体"&gt;文档类型，文档名称&lt;/span&gt; &lt;span lang=EN-US style="line-height:150%;font-family:'Courier New'"&gt;&lt;/span&gt;
&lt;tr&gt;
&lt;td style="border-right:windowtext 1pt solid;padding-right:5.4pt;border-top:#f4f4f4;padding-left:5.4pt;padding-bottom:0cm;border-left:windowtext 1pt solid;width:155.75pt;padding-top:0cm;border-bottom:windowtext 1pt solid;background-color:transparent" valign=top width=208&gt;
&lt;p style="margin:0cm 0cm 0pt;line-height:150%;text-align:center" align=center&gt;&lt;span lang=EN-US style="line-height:150%;font-family:'Courier New'"&gt;UnStored(String,String)&lt;/span&gt; 
&lt;td style="border-right:windowtext 1pt solid;padding-right:5.4pt;border-top:#f4f4f4;padding-left:5.4pt;padding-bottom:0cm;border-left:#f4f4f4;width:38.65pt;padding-top:0cm;border-bottom:windowtext 1pt solid;background-color:transparent" valign=top width=52&gt;
&lt;p style="margin:0cm 0cm 0pt;line-height:150%;text-align:center" align=center&gt;&lt;span style="line-height:150%;font-family:宋体"&gt;是&lt;/span&gt; &lt;span lang=EN-US style="line-height:150%;font-family:'Courier New'"&gt;&lt;/span&gt;
&lt;td style="border-right:windowtext 1pt solid;padding-right:5.4pt;border-top:#f4f4f4;padding-left:5.4pt;padding-bottom:0cm;border-left:#f4f4f4;width:36pt;padding-top:0cm;border-bottom:windowtext 1pt solid;background-color:transparent" valign=top width=48&gt;
&lt;p style="margin:0cm 0cm 0pt;line-height:150%;text-align:center" align=center&gt;&lt;span style="line-height:150%;font-family:宋体"&gt;是&lt;/span&gt; &lt;span lang=EN-US style="line-height:150%;font-family:'Courier New'"&gt;&lt;/span&gt;
&lt;td style="border-right:windowtext 1pt solid;padding-right:5.4pt;border-top:#f4f4f4;padding-left:5.4pt;padding-bottom:0cm;border-left:#f4f4f4;width:36pt;padding-top:0cm;border-bottom:windowtext 1pt solid;background-color:transparent" valign=top width=48&gt;
&lt;p style="margin:0cm 0cm 0pt;line-height:150%;text-align:center" align=center&gt;&lt;span style="line-height:150%;font-family:宋体"&gt;否&lt;/span&gt; &lt;span lang=EN-US style="line-height:150%;font-family:'Courier New'"&gt;&lt;/span&gt;
&lt;td style="border-right:windowtext 1pt solid;padding-right:5.4pt;border-top:#f4f4f4;padding-left:5.4pt;padding-bottom:0cm;border-left:#f4f4f4;width:159.7pt;padding-top:0cm;border-bottom:windowtext 1pt solid;background-color:transparent" valign=top width=213&gt;
&lt;p style="margin:0cm 0cm 0pt;line-height:150%;text-align:center" align=center&gt;&lt;span style="line-height:150%;font-family:宋体"&gt;文档的标题和内容&lt;/span&gt; &lt;span lang=EN-US style="line-height:150%;font-family:'Courier New'"&gt;&lt;/span&gt;
&lt;tr&gt;
&lt;td style="border-right:windowtext 1pt solid;padding-right:5.4pt;border-top:#f4f4f4;padding-left:5.4pt;padding-bottom:0cm;border-left:windowtext 1pt solid;width:155.75pt;padding-top:0cm;border-bottom:windowtext 1pt solid;background-color:transparent" valign=top width=208&gt;
&lt;p style="margin:0cm 0cm 0pt;line-height:150%;text-align:center" align=center&gt;&lt;span lang=EN-US style="line-height:150%;font-family:'Courier New'"&gt;Text(String,String)&lt;/span&gt; 
&lt;td style="border-right:windowtext 1pt solid;padding-right:5.4pt;border-top:#f4f4f4;padding-left:5.4pt;padding-bottom:0cm;border-left:#f4f4f4;width:38.65pt;padding-top:0cm;border-bottom:windowtext 1pt solid;background-color:transparent" valign=top width=52&gt;
&lt;p style="margin:0cm 0cm 0pt;line-height:150%;text-align:center" align=center&gt;&lt;span style="line-height:150%;font-family:宋体"&gt;是&lt;/span&gt; &lt;span lang=EN-US style="line-height:150%;font-family:'Courier New'"&gt;&lt;/span&gt;
&lt;td style="border-right:windowtext 1pt solid;padding-right:5.4pt;border-top:#f4f4f4;padding-left:5.4pt;padding-bottom:0cm;border-left:#f4f4f4;width:36pt;padding-top:0cm;border-bottom:windowtext 1pt solid;background-color:transparent" valign=top width=48&gt;
&lt;p style="margin:0cm 0cm 0pt;line-height:150%;text-align:center" align=center&gt;&lt;span style="line-height:150%;font-family:宋体"&gt;是&lt;/span&gt; &lt;span lang=EN-US style="line-height:150%;font-family:'Courier New'"&gt;&lt;/span&gt;
&lt;td style="border-right:windowtext 1pt solid;padding-right:5.4pt;border-top:#f4f4f4;padding-left:5.4pt;padding-bottom:0cm;border-left:#f4f4f4;width:36pt;padding-top:0cm;border-bottom:windowtext 1pt solid;background-color:transparent" valign=top width=48&gt;
&lt;p style="margin:0cm 0cm 0pt;line-height:150%;text-align:center" align=center&gt;&lt;span style="line-height:150%;font-family:宋体"&gt;是&lt;/span&gt; &lt;span lang=EN-US style="line-height:150%;font-family:'Courier New'"&gt;&lt;/span&gt;
&lt;td style="border-right:windowtext 1pt solid;padding-right:5.4pt;border-top:#f4f4f4;padding-left:5.4pt;padding-bottom:0cm;border-left:#f4f4f4;width:159.7pt;padding-top:0cm;border-bottom:windowtext 1pt solid;background-color:transparent" valign=top width=213&gt;
&lt;p style="margin:0cm 0cm 0pt;line-height:150%;text-align:center" align=center&gt;&lt;span style="line-height:150%;font-family:宋体"&gt;文档的标题和内容&lt;/span&gt; &lt;span lang=EN-US style="line-height:150%;font-family:'Courier New'"&gt;&lt;/span&gt;
&lt;tr style=""&gt;
&lt;td style="border-right:windowtext 1pt solid;padding-right:5.4pt;border-top:#f4f4f4;padding-left:5.4pt;padding-bottom:0cm;border-left:windowtext 1pt solid;width:155.75pt;padding-top:0cm;border-bottom:windowtext 1pt solid;background-color:transparent" valign=top width=208&gt;
&lt;p style="margin:0cm 0cm 0pt;line-height:150%;text-align:center" align=center&gt;&lt;span lang=EN-US style="line-height:150%;font-family:'Courier New'"&gt;Text(String,Reader)&lt;/span&gt; 
&lt;td style="border-right:windowtext 1pt solid;padding-right:5.4pt;border-top:#f4f4f4;padding-left:5.4pt;padding-bottom:0cm;border-left:#f4f4f4;width:38.65pt;padding-top:0cm;border-bottom:windowtext 1pt solid;background-color:transparent" valign=top width=52&gt;
&lt;p style="margin:0cm 0cm 0pt;line-height:150%;text-align:center" align=center&gt;&lt;span style="line-height:150%;font-family:宋体"&gt;是&lt;/span&gt; &lt;span lang=EN-US style="line-height:150%;font-family:'Courier New'"&gt;&lt;/span&gt;
&lt;td style="border-right:windowtext 1pt solid;padding-right:5.4pt;border-top:#f4f4f4;padding-left:5.4pt;padding-bottom:0cm;border-left:#f4f4f4;width:36pt;padding-top:0cm;border-bottom:windowtext 1pt solid;background-color:transparent" valign=top width=48&gt;
&lt;p style="margin:0cm 0cm 0pt;line-height:150%;text-align:center" align=center&gt;&lt;span style="line-height:150%;font-family:宋体"&gt;是&lt;/span&gt; &lt;span lang=EN-US style="line-height:150%;font-family:'Courier New'"&gt;&lt;/span&gt;
&lt;td style="border-right:windowtext 1pt solid;padding-right:5.4pt;border-top:#f4f4f4;padding-left:5.4pt;padding-bottom:0cm;border-left:#f4f4f4;width:36pt;padding-top:0cm;border-bottom:windowtext 1pt solid;background-color:transparent" valign=top width=48&gt;
&lt;p style="margin:0cm 0cm 0pt;line-height:150%;text-align:center" align=center&gt;&lt;span style="line-height:150%;font-family:宋体"&gt;否&lt;/span&gt; &lt;span lang=EN-US style="line-height:150%;font-family:'Courier New'"&gt;&lt;/span&gt;
&lt;td style="border-right:windowtext 1pt solid;padding-right:5.4pt;border-top:#f4f4f4;padding-left:5.4pt;padding-bottom:0cm;border-left:#f4f4f4;width:159.7pt;padding-top:0cm;border-bottom:windowtext 1pt solid;background-color:transparent" valign=top width=213&gt;
&lt;p style="margin:0cm 0cm 0pt;line-height:150%;text-align:center" align=center&gt;&lt;span style="line-height:150%;font-family:宋体"&gt;文档的标题和内容&lt;/span&gt; &lt;span lang=EN-US style="line-height:150%;font-family:'Courier New'"&gt;&lt;/span&gt;&lt;/tbody&gt;&lt;/table&gt;
&lt;p style="margin:0cm 0cm 0pt;line-height:150%"&gt;&lt;span lang=EN-US style="line-height:150%;font-family:'Courier New'"&gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;/span&gt;&lt;span style="line-height:150%;font-family:宋体"&gt;这样我们要建什么样的索引就对号入座吧，只要最后我们使用&lt;/span&gt; &lt;span lang=EN-US style="line-height:150%;font-family:'Courier New'"&gt;doc.add(Field.Text(&amp;quot;content&amp;quot;, content));&lt;/span&gt; &lt;span style="line-height:150%;font-family:宋体"&gt;把它添加到&lt;/span&gt; &lt;span lang=EN-US style="line-height:150%;font-family:'Courier New'"&gt;Document&lt;/span&gt; &lt;span style="line-height:150%;font-family:宋体"&gt;中就可以了。&lt;/span&gt; &lt;span lang=EN-US style="line-height:150%;font-family:'Courier New'"&gt;&lt;/span&gt;
&lt;p style="margin:0cm 0cm 0pt;line-height:150%"&gt;&lt;span lang=EN-US style="line-height:150%;font-family:'Courier New'"&gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;/span&gt;&lt;span style="line-height:150%;font-family:宋体"&gt;这时我们的文档已经建立好了，现在就开始向索引中添加文档吧！这里我们使用&lt;/span&gt; &lt;span lang=EN-US style="line-height:150%;font-family:'Courier New'"&gt;&lt;/span&gt;
&lt;p style="margin:0cm 0cm 0pt;line-height:150%"&gt;&lt;span lang=EN-US style="line-height:150%;font-family:'Courier New'"&gt;writer.addDocument(doc);&lt;/span&gt; &lt;span style="line-height:150%;font-family:宋体"&gt;来向&lt;/span&gt; &lt;span lang=EN-US style="line-height:150%;font-family:'Courier New'"&gt;Indexwriter&lt;/span&gt; &lt;span style="line-height:150%;font-family:宋体"&gt;索引中添加构造好的文档。&lt;/span&gt; &lt;span lang=EN-US style="line-height:150%;font-family:'Courier New'"&gt;&lt;/span&gt;
&lt;p style="margin:0cm 0cm 0pt;line-height:150%"&gt;&lt;span style="line-height:150%;font-family:宋体"&gt;这样我们是不是就可以说我们已经建立完了索引呢，其实不然，我们还要优化优化，这样才快嘛！对不对？&lt;/span&gt; &lt;span lang=EN-US style="line-height:150%;font-family:'Courier New'"&gt;&lt;/span&gt;
&lt;p style="margin:0cm 0cm 0pt;line-height:150%"&gt;&lt;span lang=EN-US style="line-height:150%;font-family:'Courier New'"&gt;&lt;span style=""&gt;    &lt;/span&gt;writer.optimize(); &lt;/span&gt;&lt;span style="line-height:150%;font-family:宋体"&gt;这样一句话就可以实现索引优化了，具体的优化过程我就不说了，是不是很简单。但是一定不要忘了哦。调用这个方法时最好建立一个合适的周期。定期进行优化。&lt;/span&gt; &lt;span lang=EN-US style="line-height:150%;font-family:'Courier New'"&gt;&lt;/span&gt;
&lt;p style="margin:0cm 0cm 0pt;line-height:150%"&gt;&lt;span lang=EN-US style="line-height:150%;font-family:'Courier New'"&gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;/span&gt;&lt;span style="line-height:150%;font-family:宋体"&gt;好了，这样我们就完成了索引的建立了。&lt;/span&gt; &lt;span lang=EN-US style="line-height:150%;font-family:'Courier New'"&gt;&lt;/span&gt;
&lt;p style="margin:0cm 0cm 0pt;line-height:150%"&gt;&lt;span lang=EN-US style="line-height:150%;font-family:'Courier New'"&gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;/span&gt;&lt;b&gt;&lt;span style="line-height:150%;font-family:宋体"&gt;下面我们看看缩影的合并吧！&lt;/span&gt; &lt;/b&gt;&lt;span lang=EN-US style="line-height:150%;font-family:'Courier New'"&gt;&lt;/span&gt;
&lt;p style="margin:0cm 0cm 0pt;text-indent:21pt;line-height:150%"&gt;&lt;span style="line-height:150%;font-family:宋体"&gt;当我们在很多地方建立了很多的索引后，想要合并这些索引我们怎么办呢？&lt;/span&gt; &lt;span lang=EN-US style="line-height:150%;font-family:'Courier New'"&gt;&lt;/span&gt;
&lt;p style="margin:0cm 0cm 0pt;line-height:150%"&gt;&lt;span lang=EN-US style="line-height:150%;font-family:'Courier New'"&gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;/span&gt;&lt;span style="line-height:150%;font-family:宋体"&gt;使用&lt;/span&gt; &lt;span lang=EN-US style="line-height:150%;font-family:'Courier New'"&gt;IndexWriter.assIndexs(New Directory[]{path});&lt;/span&gt; 
&lt;p style="margin:0cm 0cm 0pt;line-height:150%"&gt;&lt;span style="line-height:150%;font-family:宋体"&gt;就可以对&lt;/span&gt; &lt;span lang=EN-US style="line-height:150%;font-family:'Courier New'"&gt;path&lt;/span&gt; &lt;span style="line-height:150%;font-family:宋体"&gt;路径下的索引合并到当前的索引中了。&lt;/span&gt; &lt;span lang=EN-US style="line-height:150%;font-family:'Courier New'"&gt;&lt;/span&gt;
&lt;p style="margin:0cm 0cm 0pt;line-height:150%"&gt;&lt;span lang=EN-US style="line-height:150%;font-family:'Courier New'"&gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;/span&gt;&lt;b&gt;&lt;span style="line-height:150%;font-family:宋体"&gt;下面再看看索引的删除吧！&lt;/span&gt; &lt;/b&gt;&lt;b&gt;&lt;span lang=EN-US style="line-height:150%;font-family:'Courier New'"&gt;&lt;/span&gt;&lt;/b&gt;
&lt;p style="margin:0cm 0cm 0pt;line-height:150%"&gt;&lt;span lang=EN-US style="line-height:150%;font-family:'Courier New'"&gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;/span&gt;&lt;span style="line-height:150%;font-family:宋体"&gt;有一些过时的索引我们需要删除，怎么办呢？&lt;/span&gt; &lt;span lang=EN-US style="line-height:150%;font-family:'Courier New'"&gt;&lt;/span&gt;
&lt;p style="margin:0cm 0cm 0pt;text-indent:21pt;line-height:150%"&gt;&lt;span lang=EN-US style="line-height:150%;font-family:'Courier New'"&gt;IndexReader reader = IndexReader.open(&amp;quot;c:\\index&amp;quot;);&lt;/span&gt; 
&lt;p style="margin:0cm 0cm 0pt;line-height:150%"&gt;&lt;span lang=EN-US style="line-height:150%;font-family:'Courier New'"&gt;&lt;span style=""&gt;    &lt;/span&gt;reader.delete(0);&lt;/span&gt; 
&lt;p style="margin:0cm 0cm 0pt;text-indent:21pt;line-height:150%"&gt;&lt;span style="line-height:150%;font-family:宋体"&gt;这样我们就可以按照文档的顺序删除对应的文档了，但是这样不太现实，不对吗？我们怎么会知道文档的顺序呢？&lt;/span&gt; &lt;span lang=EN-US style="line-height:150%;font-family:'Courier New'"&gt;&lt;/span&gt;
&lt;p style="margin:0cm 0cm 0pt;text-indent:21pt;line-height:150%"&gt;&lt;span style="line-height:150%;font-family:宋体"&gt;下面我们看看第二中方法：&lt;/span&gt; &lt;span lang=EN-US style="line-height:150%;font-family:'Courier New'"&gt;&lt;/span&gt;
&lt;p style="margin:0cm 0cm 0pt;text-indent:21pt;line-height:150%"&gt;&lt;span lang=EN-US style="line-height:150%;font-family:'Courier New'"&gt;IndexReader reader = IndexReader.open(&amp;quot;c:\\index&amp;quot;);&lt;/span&gt; 
&lt;p style="margin:0cm 0cm 0pt;text-indent:21pt;line-height:150%"&gt;&lt;span lang=EN-US style="line-height:150%;font-family:'Courier New'"&gt;reader.delete(new Term(&amp;quot;name&amp;quot;,&amp;quot;word1&amp;quot;));&lt;/span&gt; 
&lt;p style="margin:0cm 0cm 0pt;text-indent:21pt;line-height:150%"&gt;&lt;span lang=EN-US style="line-height:150%;font-family:'Courier New'"&gt;reader.close();&lt;/span&gt; 
&lt;p style="margin:0cm 0cm 0pt;text-indent:21pt;line-height:150%"&gt;&lt;span style="line-height:150%;font-family:宋体"&gt;按照字段来删除对应的文档，这样合理多了。以后要删除时就按照词条的方式去删除吧&lt;/span&gt; &lt;span lang=EN-US style="line-height:150%;font-family:'Courier New'"&gt;!&lt;/span&gt; 
&lt;p style="margin:0cm 0cm 0pt;text-indent:21pt;line-height:150%"&gt;&lt;span style="line-height:150%;font-family:宋体"&gt;索引锁：&lt;/span&gt; &lt;span lang=EN-US style="line-height:150%;font-family:'Courier New'"&gt;write.lock , commit.lock.&lt;/span&gt; 
&lt;p style="margin:0cm 0cm 0pt;text-indent:21pt;line-height:150%"&gt;&lt;span lang=EN-US style="line-height:150%;font-family:'Courier New'"&gt;write.lock &lt;/span&gt;&lt;span style="line-height:150%;font-family:宋体"&gt;是为了避免几个线程同时修改一个索引文档而设置。当实例一个&lt;/span&gt; &lt;span lang=EN-US style="line-height:150%;font-family:'Courier New'"&gt;indexwrite&lt;/span&gt; &lt;span style="line-height:150%;font-family:宋体"&gt;时建立和使用&lt;/span&gt; &lt;span lang=EN-US style="line-height:150%;font-family:'Courier New'"&gt;indexReader&lt;/span&gt; &lt;span style="line-height:150%;font-family:宋体"&gt;删除文档时建立。&lt;/span&gt; &lt;span lang=EN-US style="line-height:150%;font-family:'Courier New'"&gt;&lt;/span&gt;
&lt;p style="margin:0cm 0cm 0pt;text-indent:21pt;line-height:150%"&gt;&lt;span lang=EN-US style="line-height:150%;font-family:'Courier New'"&gt;Commit.lock &lt;/span&gt;&lt;span style="line-height:150%;font-family:宋体"&gt;该锁主要在&lt;/span&gt; &lt;span lang=EN-US style="line-height:150%;font-family:'Courier New'"&gt;segment&lt;/span&gt; &lt;span style="line-height:150%;font-family:宋体"&gt;在建立，合并或读取时生成。&lt;/span&gt; 
&lt;p style="margin:0cm 0cm 0pt;text-indent:21pt;line-height:150%"&gt;&lt;span lang=EN-US style="line-height:150%;font-family:'Courier New'"&gt;&lt;/span&gt; &lt;/div&gt;&lt;img src="http://c.services.spaces.live.com/CollectionWebService/c.gif?cid=-2510522667657978555&amp;page=RSS%3a+Lucene%e7%9a%84%e5%ad%a6%e4%b9%a02(%e8%bd%ac)&amp;referrer=" width="1px" height="1px" border="0" alt=""&gt;&lt;img style="position:absolute" alt="" width="0px" height="0px" src="http://c.live.com/c.gif?NC=31263&amp;amp;NA=1149&amp;amp;PI=73329&amp;amp;RF=&amp;amp;DI=3919&amp;amp;PS=85545&amp;amp;TP=eddyzhoufeng.spaces.live.com&amp;amp;GT1=eddyzhoufeng"&gt;</description><comments>http://eddyzhoufeng.spaces.live.com/Blog/cns!DD28D4EF61AE1D45!786.entry#comment</comments><guid isPermaLink="true">http://eddyzhoufeng.spaces.live.com/Blog/cns!DD28D4EF61AE1D45!786.entry</guid><pubDate>Mon, 22 Oct 2007 16:36:05 GMT</pubDate><slash:comments>0</slash:comments><msn:type>blogentry</msn:type><live:type>blogentry</live:type><live:typelabel>Blog entry</live:typelabel><wfw:commentRss>http://eddyzhoufeng.spaces.live.com/blog/cns!DD28D4EF61AE1D45!786/comments/feed.rss</wfw:commentRss><wfw:comment>http://eddyzhoufeng.spaces.live.com/Blog/cns!DD28D4EF61AE1D45!786.entry#comment</wfw:comment><dcterms:modified>2007-10-22T16:36:05Z</dcterms:modified></item><item><title>Lucene 的学习1（转)</title><link>http://eddyzhoufeng.spaces.live.com/Blog/cns!DD28D4EF61AE1D45!785.entry</link><description>&lt;span style="line-height:150%;font-family:宋体"&gt;通过这几天的看书和学习，对&lt;/span&gt; &lt;span lang=EN-US style="line-height:150%;font-family:'Courier New'"&gt;Lucene&lt;/span&gt; &lt;span style="line-height:150%;font-family:宋体"&gt;有了更进一步的认识，所以总结一下这些天的学习成果把&lt;/span&gt; &lt;span lang=EN-US style="line-height:150%;font-family:'Courier New'"&gt;Lucene&lt;/span&gt; &lt;span style="line-height:150%;font-family:宋体"&gt;的学习心得也学出来。&lt;/span&gt; &lt;span lang=EN-US style="line-height:150%;font-family:'Courier New'"&gt;&lt;/span&gt;
&lt;h1 style="margin:17pt 0cm 16.5pt 21.25pt;text-indent:-21.25pt;tab-stops:list 21.25pt"&gt;&lt;span lang=EN-US style="font-size:12pt;line-height:240%"&gt;&lt;span style=""&gt;1&lt;span style="font:7pt 'Times New Roman'"&gt;          &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span lang=EN-US style="font-size:12pt;line-height:240%"&gt;Lucene&lt;/span&gt; &lt;span style="font-size:12pt;line-height:240%;font-family:宋体"&gt;的认识&lt;/span&gt; &lt;span lang=EN-US style="font-size:12pt;line-height:240%"&gt;&lt;/span&gt;&lt;/h1&gt;
&lt;p style="margin:0cm 0cm 0pt;text-indent:21pt;line-height:150%"&gt;&lt;span style="font-family:宋体"&gt;提到&lt;/span&gt; &lt;span lang=EN-US style="font-family:'Courier New'"&gt;Lucene&lt;/span&gt; &lt;span style="font-family:宋体"&gt;很多人都知道这个开源的搜索工具，其魅力也是很大的。它让我们对搜索引擎的认识不在那么神秘，也不会在觉得百度和&lt;/span&gt; &lt;span lang=EN-US style="font-family:'Courier New'"&gt;google&lt;/span&gt; &lt;span style="font-family:宋体"&gt;的技术多么的高深没测，其实其原理都是一样的，只是他们要做的更好，走的更远罢了。&lt;/span&gt; &lt;span lang=EN-US style="font-family:'Courier New'"&gt;&lt;/span&gt;
&lt;p style="margin:0cm 0cm 0pt;text-indent:21pt;line-height:150%"&gt;&lt;span lang=EN-US style="line-height:150%;font-family:'Courier New'"&gt;Lucene&lt;/span&gt; &lt;span style="line-height:150%;font-family:宋体"&gt;可以对任何的数据做索引和搜索，说这样的话其实不过分，真的就是这样，只要你能处理好这些数据，交给&lt;/span&gt; &lt;span lang=EN-US style="line-height:150%;font-family:'Courier New'"&gt;Lucene&lt;/span&gt; &lt;span style="line-height:150%;font-family:宋体"&gt;去建立索引它都可以帮你把这些数据给检索出来，是不是很好玩了。真正好玩的地方还在后面呢。&lt;/span&gt;
&lt;h1 style="margin:17pt 0cm 16.5pt 21.25pt;text-indent:-21.25pt;tab-stops:list 21.25pt"&gt;&lt;span lang=EN-US style="font-size:10.5pt;line-height:240%;font-family:'Courier New'"&gt;&lt;span style=""&gt;2&lt;span style="font:7pt 'Times New Roman'"&gt;          &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span lang=EN-US style="font-size:12pt;line-height:240%"&gt;Lucene&lt;/span&gt; &lt;span style="font-size:12pt;line-height:240%;font-family:宋体"&gt;的学习&lt;/span&gt; &lt;span lang=EN-US style="font-size:10.5pt;line-height:240%;font-family:'Courier New'"&gt;&lt;/span&gt;&lt;/h1&gt;
&lt;p style="margin:0cm 0cm 0pt;text-indent:21pt;line-height:150%"&gt;&lt;span style="line-height:150%;font-family:宋体"&gt;前面已经对&lt;/span&gt; &lt;span lang=EN-US style="line-height:150%;font-family:'Courier New'"&gt;Lucene&lt;/span&gt; &lt;span style="line-height:150%;font-family:宋体"&gt;有了一些了解，现在我们想象它怎么去搜索这些数据呢，如果知道倒排索引，你就知道了，其实&lt;/span&gt; &lt;span lang=EN-US style="line-height:150%;font-family:'Courier New'"&gt;lucene&lt;/span&gt; &lt;span style="line-height:150%;font-family:宋体"&gt;检索的是它自己建立的索引，从索引中的到数据的指针，从而得到数据。其实就这么简单。&lt;/span&gt; &lt;span lang=EN-US style="line-height:150%;font-family:'Courier New'"&gt;&lt;/span&gt;
&lt;p style="margin:0cm 0cm 0pt;text-indent:21pt;line-height:150%"&gt;&lt;span style="line-height:150%;font-family:宋体"&gt;提到索引，现在的索引技术中有：倒排索引、后缀数组和签名文件这三种，其中后缀数组这种技术虽然检索速度也很快，但是它的数据结构构造和维护都是相当麻烦的所以不可取了。我也懒得去看了。至于签名文件嘛，那是&lt;/span&gt; &lt;span lang=EN-US style="line-height:150%;font-family:'Courier New'"&gt;80&lt;/span&gt; &lt;span style="line-height:150%;font-family:宋体"&gt;年代的玩意了，现在已经过时了。现在可是倒排索引的天下啊！相信百度和&lt;/span&gt; &lt;span lang=EN-US style="line-height:150%;font-family:'Courier New'"&gt;google&lt;/span&gt; &lt;span style="line-height:150%;font-family:宋体"&gt;都是这种技术。&lt;/span&gt; &lt;span lang=EN-US style="line-height:150%;font-family:'Courier New'"&gt;&lt;/span&gt;&lt;img src="http://c.services.spaces.live.com/CollectionWebService/c.gif?cid=-2510522667657978555&amp;page=RSS%3a+Lucene+%e7%9a%84%e5%ad%a6%e4%b9%a01%ef%bc%88%e8%bd%ac)&amp;referrer=" width="1px" height="1px" border="0" alt=""&gt;&lt;img style="position:absolute" alt="" width="0px" height="0px" src="http://c.live.com/c.gif?NC=31263&amp;amp;NA=1149&amp;amp;PI=73329&amp;amp;RF=&amp;amp;DI=3919&amp;amp;PS=85545&amp;amp;TP=eddyzhoufeng.spaces.live.com&amp;amp;GT1=eddyzhoufeng"&gt;</description><comments>http://eddyzhoufeng.spaces.live.com/Blog/cns!DD28D4EF61AE1D45!785.entry#comment</comments><guid isPermaLink="true">http://eddyzhoufeng.spaces.live.com/Blog/cns!DD28D4EF61AE1D45!785.entry</guid><pubDate>Mon, 22 Oct 2007 16:33:56 GMT</pubDate><slash:comments>0</slash:comments><msn:type>blogentry</msn:type><live:type>blogentry</live:type><live:typelabel>Blog entry</live:typelabel><wfw:commentRss>http://eddyzhoufeng.spaces.live.com/blog/cns!DD28D4EF61AE1D45!785/comments/feed.rss</wfw:commentRss><wfw:comment>http://eddyzhoufeng.spaces.live.com/Blog/cns!DD28D4EF61AE1D45!785.entry#comment</wfw:comment><dcterms:modified>2007-10-22T16:33:56Z</dcterms:modified></item><item><title>StandardAnalyzer和simpleAnalyzer的比较</title><link>http://eddyzhoufeng.spaces.live.com/Blog/cns!DD28D4EF61AE1D45!784.entry</link><description>&lt;p&gt;StandardAnalyzer和simpleAnalyzer是lucene自带的两个分词器，simpleAnalyzer其实是简单的划分为短句，而simpleAnalyzer是把句子拆分为一个字！写了个小demo演示了一下，这两个都没有与词库有关联！
&lt;p&gt;代码地址：&lt;a href="http://free5.ys168.com/?feng5166"&gt;http://free5.ys168.com/?feng5166&lt;/a&gt;
&lt;p&gt; &lt;img src="http://c.services.spaces.live.com/CollectionWebService/c.gif?cid=-2510522667657978555&amp;page=RSS%3a+StandardAnalyzer%e5%92%8csimpleAnalyzer%e7%9a%84%e6%af%94%e8%be%83&amp;referrer=" width="1px" height="1px" border="0" alt=""&gt;&lt;img style="position:absolute" alt="" width="0px" height="0px" src="http://c.live.com/c.gif?NC=31263&amp;amp;NA=1149&amp;amp;PI=73329&amp;amp;RF=&amp;amp;DI=3919&amp;amp;PS=85545&amp;amp;TP=eddyzhoufeng.spaces.live.com&amp;amp;GT1=eddyzhoufeng"&gt;</description><comments>http://eddyzhoufeng.spaces.live.com/Blog/cns!DD28D4EF61AE1D45!784.entry#comment</comments><guid isPermaLink="true">http://eddyzhoufeng.spaces.live.com/Blog/cns!DD28D4EF61AE1D45!784.entry</guid><pubDate>Mon, 22 Oct 2007 16:11:05 GMT</pubDate><slash:comments>0</slash:comments><msn:type>blogentry</msn:type><live:type>blogentry</live:type><live:typelabel>Blog entry</live:typelabel><wfw:commentRss>http://eddyzhoufeng.spaces.live.com/blog/cns!DD28D4EF61AE1D45!784/comments/feed.rss</wfw:commentRss><wfw:comment>http://eddyzhoufeng.spaces.live.com/Blog/cns!DD28D4EF61AE1D45!784.entry#comment</wfw:comment><dcterms:modified>2007-10-22T16:11:05Z</dcterms:modified></item><item><title>补一副搜索引擎架构的图</title><link>http://eddyzhoufeng.spaces.live.com/Blog/cns!DD28D4EF61AE1D45!781.entry</link><description>&lt;a href="http://blufiles.storage.live.com/y1pP_NC8edCFYmpPjvmEP-QMKSahuMSXzfDxQ2tKcUojVK8a8tHZMoEJmXSfSYGCaqdxBfIZfz5b5M" target="_blank"&gt;&lt;img style="width:455px;height:385px" height=175 alt=2 src="http://blufiles.storage.live.com/y1pP_NC8edCFYmpPjvmEP-QMKSahuMSXzfDxQ2tKcUojVK8a8tHZMoEJmXSfSYGCaqdxBfIZfz5b5M" width=240&gt;&lt;/a&gt;
&lt;div&gt;&lt;/div&gt;&lt;img src="http://c.services.spaces.live.com/CollectionWebService/c.gif?cid=-2510522667657978555&amp;page=RSS%3a+%e8%a1%a5%e4%b8%80%e5%89%af%e6%90%9c%e7%b4%a2%e5%bc%95%e6%93%8e%e6%9e%b6%e6%9e%84%e7%9a%84%e5%9b%be&amp;referrer=" width="1px" height="1px" border="0" alt=""&gt;&lt;img style="position:absolute" alt="" width="0px" height="0px" src="http://c.live.com/c.gif?NC=31263&amp;amp;NA=1149&amp;amp;PI=73329&amp;amp;RF=&amp;amp;DI=3919&amp;amp;PS=85545&amp;amp;TP=eddyzhoufeng.spaces.live.com&amp;amp;GT1=eddyzhoufeng"&gt;</description><comments>http://eddyzhoufeng.spaces.live.com/Blog/cns!DD28D4EF61AE1D45!781.entry#comment</comments><guid isPermaLink="true">http://eddyzhoufeng.spaces.live.com/Blog/cns!DD28D4EF61AE1D45!781.entry</guid><pubDate>Sun, 21 Oct 2007 16:54:39 GMT</pubDate><slash:comments>0</slash:comments><msn:type>blogentry</msn:type><live:type>blogentry</live:type><live:typelabel>Blog entry</live:typelabel><wfw:commentRss>http://eddyzhoufeng.spaces.live.com/blog/cns!DD28D4EF61AE1D45!781/comments/feed.rss</wfw:commentRss><wfw:comment>http://eddyzhoufeng.spaces.live.com/Blog/cns!DD28D4EF61AE1D45!781.entry#comment</wfw:comment><dcterms:modified>2007-10-21T16:54:39Z</dcterms:modified></item><item><title>分析百度的中文分词结果（转）</title><link>http://eddyzhoufeng.spaces.live.com/Blog/cns!DD28D4EF61AE1D45!777.entry</link><description>&lt;span&gt;本结果是基于&lt;/span&gt;&lt;span&gt;20000&lt;/span&gt;&lt;span&gt;次以上的搜索分析百度而的来的，如有不当请指正，希望我们能够一起来揭开百度分词的面纱。&lt;/span&gt; 
&lt;p&gt;&lt;span&gt;在大家的心目中可能百度的分词是极其复杂的，他代表了中国分词领域的最高水平，其实不然，简单最好，裸体最美，当我们拨下百度的衣服，既然会发现百度的分词是如此的简单，可能正应了一个名人的某一句话：当用户输入查询关键字的时候我们要准确的知道用户在想什么！这正是百度所追求的，他把所有的工作都放在了处理用户查询关键字的时候。&lt;/span&gt; 
&lt;p&gt;&lt;span&gt;本分析结果也是无意得到的。&lt;/span&gt;&lt;span&gt;&lt;a href="http://www.sj110.com/"&gt;&lt;u&gt;&lt;font color="#800080"&gt;www.sj110.com&lt;/font&gt;&lt;/u&gt;&lt;/a&gt;&lt;/span&gt;&lt;span&gt;搜价&lt;/span&gt;&lt;span&gt;110&lt;/span&gt;&lt;span&gt;是&lt;/span&gt;&lt;span&gt;Handsome man Eunge&lt;/span&gt;&lt;span&gt;带领下的一个项目，因我是&lt;/span&gt;&lt;span&gt;pwqzc&lt;/span&gt;&lt;span&gt;老鼠，老鼠吗，就是打点小洞，所以我负责词库这一块，为了词库的精确，在处理词库的时候经常查询百度，查多了，想多了，问题就出来了，竟然发现对百度的分词稍微有了点了解，这个是我无意撞上的，就如一个送水的汉子，碰上了一个要水的少妇，而这个少妇的男人三年前出门至今未归，此&lt;/span&gt;&lt;span&gt;MM&lt;/span&gt;&lt;span&gt;鸡渴难耐，于是和那个送水的汉子发生了不该发生的事，呵呵，都是撞上的。&lt;/span&gt; 
&lt;p&gt;&lt;span&gt;下面是我的一些分析结果，凡是我可以肯定的，我都注明了。&lt;/span&gt; 
&lt;p&gt;&lt;span&gt;1&lt;/span&gt;&lt;span&gt;．百度的蜘蛛爬到的文档索引入库的时候是只进行了简单的分词处理（我可以肯定），也就是只是简单的把中文单个字单个字的分开，要证明这点很简单，你只需要搜索“地”或者“书”或者“脑”。。。。。。等单个词就可以了，当然，你也可以找一些莫名其妙的两个字或者三个字组合在一起搜索百度看，你就会明白他入库的时候只进行了简单的把单个中文分开的处理。他把复杂的分词逻辑放到了处理用户输入查询关键字的时候。仔细一想，其实这样做能够最大限度的消除歧义！！！&lt;/span&gt; 
&lt;p&gt;&lt;span&gt;2&lt;/span&gt;&lt;span&gt;．当用户输入两个字和三个字的词进行搜索的时候百度也没有进行任何处理的（我可以肯定），也只是把他们简单的按照单个字分开，然后查询的时候条件是这两个字或者这三个字必须连接在一起，中间没有任何其他的字。要证明这点也很简单，大家只要输入任意两个字的词或者三个字的词进行搜索就可以了，甚至你可以搜索“甘新哦”，“春天气”，“哦人无”等毫无意义的词进行查询，看是不是出来的搜索结果要么是没有找到任何内容，要么是包括你输入了的任何字，而且这些字都是连接在一起的，虽然这些字他们之间的组合是毫无意义，这也同时证明了百度在索引入库的时候是只进行了简单的按照单个中文分开。&lt;/span&gt; 
&lt;p&gt;&lt;span&gt;3&lt;/span&gt;&lt;span&gt;．百度如何处理四个字？我们输入“李宇春天”搜索，结果是被分成了“李宇”和“春天”，这给我们带来了两个疑问：第一，如果李宇春已经收录到了词典里面，那么肯定肯定百度是正向分词。第二，如果李宇春没有被收录到词典里面，那么可能是正向分词也可能是逆向分词。那么到底是那种呢？我们先判断百度处理查询关键子的时候是逆向分词还是正向分词。我们再输入“笔畅通行”来搜索他被分成了“畅通”，我想笔畅应该不会被收进词典，按此分析应该是正向分词；我们再输入“笔畅通知”，很明显被分成了“笔畅”和“通知”，这看起来是逆向分词的结果，如果是正向的话那也会被分成“畅通”的；我们再输入“桃李宇春”搜索，结果被分成了“桃李”和“宇春”，这看起来象正向分词，当然这也不能够证明就是逆向，因为如果李宇春没有收进词典，这逆向分词也会得到同样的结果。那么百度到底是正向还是逆向呢？我们抛开名字吧，因为我们还不感肯定象李宇宙春之类的词是不是在百度的词典里面，现在我们输入“神彩票啊”，很明显被分成了“彩票”，再输入“光彩票啊”，很明显也被风成了“彩票”，再输入“啊中国家”，结果被分成了“国家”，再搜索“啊国家庭”，被风成了“家庭”，我们再输入“风岁月亮”搜索，被分成了风岁和月亮，再输入“风岁月球”，被分成了“分”，“岁月”和“球”，再输入“风岁月份”，被分成了“分色”和“月份”，这样的结果看起来真的很让我们郁闷！！！极度郁闷！！更郁闷的是还在后头啊，我输入“笔畅通过”搜索，第一次的所有结果是全部把这四个字搜索出来，而且他们都是连接在一起的，而且这四个字之间没有任何其他的字！！但是我们过几分钟再次搜索，结果竟然截然不同！！！“笔畅通过”被分成了“畅通”！！！！这里我不敢乱下结论，如果是我，那我应该怎么样去处理四个字的关键字呢？&lt;/span&gt; 
&lt;p&gt;&lt;span&gt;一，&lt;span&gt;               &lt;/span&gt;&lt;/span&gt;&lt;span&gt;首先取这四个字去匹配词典，如果匹配成功，则查询条件如&lt;/span&gt;&lt;span&gt;ABCD&lt;/span&gt;&lt;span&gt;，返回的结果必须包含&lt;/span&gt;&lt;span&gt;ABCD&lt;/span&gt;&lt;span&gt;，且&lt;/span&gt;&lt;span&gt;ABCD&lt;/span&gt;&lt;span&gt;必须连接在一起，中间没有任何其他字，在这里我首先假设索引入库的时候是只进行了简单的按照单个字切分，且搜索的时候能够判断索引文件里的&lt;/span&gt;&lt;span&gt;A/B/C/D&lt;/span&gt;&lt;span&gt;等文字中间有没有其他的文字。&lt;/span&gt; 
&lt;p&gt;&lt;span&gt;二，&lt;span&gt;               &lt;/span&gt;&lt;/span&gt;&lt;span&gt;如果一匹配不成功，则截取前面两个字匹配词典，如果匹配成功，则如&lt;/span&gt;&lt;span&gt;ABCD&lt;/span&gt;&lt;span&gt;分成&lt;/span&gt;&lt;span&gt;AB/CD&lt;/span&gt;&lt;span&gt;，查询结果必须包含&lt;/span&gt;&lt;span&gt;AB&lt;/span&gt;&lt;span&gt;和&lt;/span&gt;&lt;span&gt;CD&lt;/span&gt;&lt;span&gt;，&lt;/span&gt;&lt;span&gt;AB&lt;/span&gt;&lt;span&gt;之间不能够有其他文字，&lt;/span&gt;&lt;span&gt;CD&lt;/span&gt;&lt;span&gt;之间也不能够有其他文字，&lt;/span&gt;&lt;span&gt;AB&lt;/span&gt;&lt;span&gt;和&lt;/span&gt;&lt;span&gt;CD&lt;/span&gt;&lt;span&gt;之间可以出现其他文字；查询结果可以包含&lt;/span&gt;&lt;span&gt;ABCD&lt;/span&gt;&lt;span&gt;全部连接在一起四个字之间没有其他文字的结果，且其排序优先于&lt;/span&gt;&lt;span&gt;AB/CD&lt;/span&gt;&lt;span&gt;。&lt;/span&gt; 
&lt;p&gt;&lt;span&gt;三，&lt;span&gt;               &lt;/span&gt;&lt;/span&gt;&lt;span&gt;如果二匹配不成功，则截取最后面两个字匹配字典，如果匹配成功，采取和上面二一样的做法。&lt;/span&gt; 
&lt;p&gt;&lt;span&gt;四，&lt;span&gt;               &lt;/span&gt;&lt;/span&gt;&lt;span&gt;如果三匹配不成功，则截取中间两个字匹配词典，如果匹配成功，则如&lt;/span&gt;&lt;span&gt;ABCD&lt;/span&gt;&lt;span&gt;查询的结果里面必须&lt;/span&gt;&lt;span&gt;BC&lt;/span&gt;&lt;span&gt;，且&lt;/span&gt;&lt;span&gt;BC&lt;/span&gt;&lt;span&gt;之间没有其他文字，结果也可以包含&lt;/span&gt;&lt;span&gt;BCD&lt;/span&gt;&lt;span&gt;，结果也可以包含&lt;/span&gt;&lt;span&gt;ABC&lt;/span&gt;&lt;span&gt;，结果也可以包含&lt;/span&gt;&lt;span&gt;ABCD&lt;/span&gt;&lt;span&gt;，结果排序优先规则（从最优开始）：&lt;/span&gt;&lt;span&gt;ABCD&lt;/span&gt;&lt;span&gt;全部连接在一起的结果&lt;/span&gt;&lt;span&gt;------BCD&lt;/span&gt;&lt;span&gt;全部连接在一起的结果或&lt;/span&gt;&lt;span&gt;ABC&lt;/span&gt;&lt;span&gt;全部连接在一起的结果&lt;/span&gt;&lt;span&gt;------BC&lt;/span&gt;&lt;span&gt;全部连接在一起的结果。&lt;/span&gt; 
&lt;p&gt;&lt;span&gt;五，&lt;span&gt;               &lt;/span&gt;&lt;/span&gt;&lt;span&gt;如果四匹配不成功，则可以肯定他是地名人名或者其他专有名词或者这四个字连起来没有任何意义，则采用一的方法。&lt;/span&gt; 
&lt;p&gt;&lt;span&gt;暂时写到这吧，其他的慢慢来&lt;/span&gt; b6a03e3e
&lt;div&gt;&lt;/div&gt;&lt;img src="http://c.services.spaces.live.com/CollectionWebService/c.gif?cid=-2510522667657978555&amp;page=RSS%3a+%e5%88%86%e6%9e%90%e7%99%be%e5%ba%a6%e7%9a%84%e4%b8%ad%e6%96%87%e5%88%86%e8%af%8d%e7%bb%93%e6%9e%9c%ef%bc%88%e8%bd%ac%ef%bc%89&amp;referrer=" width="1px" height="1px" border="0" alt=""&gt;&lt;img style="position:absolute" alt="" width="0px" height="0px" src="http://c.live.com/c.gif?NC=31263&amp;amp;NA=1149&amp;amp;PI=73329&amp;amp;RF=&amp;amp;DI=3919&amp;amp;PS=85545&amp;amp;TP=eddyzhoufeng.spaces.live.com&amp;amp;GT1=eddyzhoufeng"&gt;</description><comments>http://eddyzhoufeng.spaces.live.com/Blog/cns!DD28D4EF61AE1D45!777.entry#comment</comments><guid isPermaLink="true">http://eddyzhoufeng.spaces.live.com/Blog/cns!DD28D4EF61AE1D45!777.entry</guid><pubDate>Thu, 18 Oct 2007 16:35:41 GMT</pubDate><slash:comments>1</slash:comments><msn:type>blogentry</msn:type><live:type>blogentry</live:type><live:typelabel>Blog entry</live:typelabel><wfw:commentRss>http://eddyzhoufeng.spaces.live.com/blog/cns!DD28D4EF61AE1D45!777/comments/feed.rss</wfw:commentRss><wfw:comment>http://eddyzhoufeng.spaces.live.com/Blog/cns!DD28D4EF61AE1D45!777.entry#comment</wfw:comment><dcterms:modified>2007-10-19T14:12:31Z</dcterms:modified></item><item><title>DotLucene笔记(1)----Lucene.Net.Analysis</title><link>http://eddyzhoufeng.spaces.live.com/Blog/cns!DD28D4EF61AE1D45!770.entry</link><description>&lt;div&gt;
&lt;p style="margin:0cm 0cm 0pt"&gt;&lt;font face=Arial&gt;&lt;font size=2&gt;&lt;span style="font-family:宋体"&gt;本系列笔记将以&lt;/span&gt;&lt;span lang=EN-US&gt;DotLucene&lt;/span&gt;&lt;span style="font-family:宋体"&gt;的命名空间组织行文，阅读的&lt;/span&gt;&lt;span lang=EN-US&gt;DotLucene&lt;/span&gt;&lt;span style="font-family:宋体"&gt;版本是&lt;/span&gt;&lt;span lang=EN-US&gt;1.9.RC1,&lt;/span&gt;&lt;span style="font-family:宋体"&gt;并且以更好的使用而非研究为目的阅读。也就是说要避难就易拉。&lt;/span&gt;&lt;span lang=EN-US&gt;&lt;/span&gt;&lt;/font&gt;&lt;/font&gt; 
&lt;p style="margin:0cm 0cm 0pt"&gt;&lt;font face=Arial&gt;&lt;font size=2&gt;&lt;span lang=EN-US&gt;0&lt;/span&gt;&lt;span style="font-family:宋体"&gt;）&lt;/span&gt;&lt;span lang=EN-US&gt;, DotLucene&lt;/span&gt;&lt;span style="font-family:宋体"&gt;主要命名空间概览：&lt;/span&gt; &lt;/font&gt;&lt;/font&gt;&lt;span lang=EN-US&gt;&lt;br&gt;&lt;br&gt;&lt;/span&gt;
&lt;table style="border-right:medium none;border-top:medium none;margin:auto auto auto 5.4pt;border-left:medium none;width:423pt;border-bottom:medium none;border-collapse:collapse" cellspacing=0 cellpadding=0 width=564 border=1&gt;
&lt;tbody&gt;
&lt;tr style="height:15pt"&gt;
&lt;td style="border-right:windowtext 1pt solid;padding-right:5.4pt;border-top:windowtext 1pt solid;padding-left:5.4pt;padding-bottom:0cm;border-left:windowtext 1pt solid;width:153pt;padding-top:0cm;border-bottom:windowtext 1pt solid;height:15pt;background-color:transparent" valign=top width=204&gt;
&lt;p style="margin:0cm 0cm 0pt;text-align:center" align=center&gt;&lt;span style="font-family:宋体"&gt;&lt;font face=Arial size=2&gt;命名空间&lt;/font&gt;&lt;/span&gt; 
&lt;td style="border-right:windowtext 1pt solid;padding-right:5.4pt;border-top:windowtext 1pt solid;padding-left:5.4pt;padding-bottom:0cm;border-left:#d4d0c8;width:270pt;padding-top:0cm;border-bottom:windowtext 1pt solid;height:15pt;background-color:transparent" valign=top width=360&gt;
&lt;p style="margin:0cm 0cm 0pt;text-align:center" align=center&gt;&lt;span style="font-family:宋体"&gt;&lt;font face=Arial size=2&gt;功能说明&lt;/font&gt;&lt;/span&gt; 
&lt;tr style="height:21.75pt"&gt;
&lt;td style="border-right:windowtext 1pt solid;padding-right:5.4pt;border-top:#d4d0c8;padding-left:5.4pt;padding-bottom:0cm;border-left:windowtext 1pt solid;width:153pt;padding-top:0cm;border-bottom:windowtext 1pt solid;height:21.75pt;background-color:transparent" valign=top width=204&gt;
&lt;p style="margin:0cm 0cm 0pt"&gt;&lt;span lang=EN-US style="font-size:9pt;font-family:新宋体"&gt;&lt;font face=Arial size=2&gt;Lucene.Net.Analysis&lt;/font&gt;&lt;/span&gt; 
&lt;td style="border-right:windowtext 1pt solid;padding-right:5.4pt;border-top:#d4d0c8;padding-left:5.4pt;padding-bottom:0cm;border-left:#d4d0c8;width:270pt;padding-top:0cm;border-bottom:windowtext 1pt solid;height:21.75pt;background-color:transparent" valign=top width=360&gt;
&lt;p style="margin:0cm 0cm 0pt"&gt;&lt;font face=Arial&gt;&lt;font size=2&gt;&lt;span style="color:#333333;font-family:宋体"&gt;语言分析器，主要用于切词，支持中文主要是扩展此类&lt;/span&gt;&lt;span lang=EN-US style="color:#333333;font-family:宋体"&gt;&lt;/span&gt;&lt;/font&gt;&lt;/font&gt; 
&lt;tr style="height:22.5pt"&gt;
&lt;td style="border-right:windowtext 1pt solid;padding-right:5.4pt;border-top:#d4d0c8;padding-left:5.4pt;padding-bottom:0cm;border-left:windowtext 1pt solid;width:153pt;padding-top:0cm;border-bottom:windowtext 1pt solid;height:22.5pt;background-color:transparent" valign=top width=204&gt;
&lt;p style="margin:0cm 0cm 0pt"&gt;&lt;span lang=EN-US style="font-size:9pt;font-family:新宋体"&gt;&lt;font face=Arial size=2&gt;Lucene.Net.Documents&lt;/font&gt;&lt;/span&gt; 
&lt;td style="border-right:windowtext 1pt solid;padding-right:5.4pt;border-top:#d4d0c8;padding-left:5.4pt;padding-bottom:0cm;border-left:#d4d0c8;width:270pt;padding-top:0cm;border-bottom:windowtext 1pt solid;height:22.5pt;background-color:transparent" valign=top width=360&gt;
&lt;p style="margin:0cm 0cm 0pt;text-align:center" align=center&gt;&lt;font face=Arial&gt;&lt;font size=2&gt;&lt;span style="color:#333333;font-family:宋体"&gt;索引存储时的文档结构管理，类似关系型数据库的表结构&lt;/span&gt;&lt;span lang=EN-US style="color:#333333;font-family:宋体"&gt;&lt;/span&gt;&lt;/font&gt;&lt;/font&gt; 
&lt;tr style="height:22.5pt"&gt;
&lt;td style="border-right:windowtext 1pt solid;padding-right:5.4pt;border-top:#d4d0c8;padding-left:5.4pt;padding-bottom:0cm;border-left:windowtext 1pt solid;width:153pt;padding-top:0cm;border-bottom:windowtext 1pt solid;height:22.5pt;background-color:transparent" valign=top width=204&gt;
&lt;p style="margin:0cm 0cm 0pt"&gt;&lt;span lang=EN-US style="font-size:9pt;font-family:新宋体"&gt;&lt;font face=Arial size=2&gt;Lucene.Net.Index&lt;/font&gt;&lt;/span&gt; 
&lt;td style="border-right:windowtext 1pt solid;padding-right:5.4pt;border-top:#d4d0c8;padding-left:5.4pt;padding-bottom:0cm;border-left:#d4d0c8;width:270pt;padding-top:0cm;border-bottom:windowtext 1pt solid;height:22.5pt;background-color:transparent" valign=top width=360&gt;
&lt;p style="margin:0cm 0cm 0pt"&gt;&lt;font face=Arial&gt;&lt;font size=2&gt;&lt;span style="color:#333333;font-family:宋体"&gt;索引管理，包括索引建立、删除等&lt;/span&gt;&lt;span lang=EN-US style="color:#333333;font-family:宋体"&gt;&lt;/span&gt;&lt;/font&gt;&lt;/font&gt; 
&lt;tr style="height:24pt"&gt;
&lt;td style="border-right:windowtext 1pt solid;padding-right:5.4pt;border-top:#d4d0c8;padding-left:5.4pt;padding-bottom:0cm;border-left:windowtext 1pt solid;width:153pt;padding-top:0cm;border-bottom:windowtext 1pt solid;height:24pt;background-color:transparent" valign=top width=204&gt;
&lt;p style="margin:0cm 0cm 0pt"&gt;&lt;font face=Arial&gt;&lt;font size=2&gt;&lt;span lang=EN-US style="font-size:9pt;font-family:新宋体"&gt;Lucene.Net.QueryParsers&lt;/span&gt;&lt;span lang=EN-US&gt;&lt;/span&gt;&lt;/font&gt;&lt;/font&gt; 
&lt;td style="border-right:windowtext 1pt solid;padding-right:5.4pt;border-top:#d4d0c8;padding-left:5.4pt;padding-bottom:0cm;border-left:#d4d0c8;width:270pt;padding-top:0cm;border-bottom:windowtext 1pt solid;height:24pt;background-color:transparent" valign=top width=360&gt;
&lt;p style="margin:0cm 0cm 0pt;text-align:center" align=center&gt;&lt;font face=Arial&gt;&lt;font size=2&gt;&lt;span style="color:#333333;font-family:宋体"&gt;查询分析器，实现查询关键词间的运算，如与、或、非等&lt;/span&gt;&lt;span lang=EN-US style="color:#333333;font-family:宋体"&gt;&lt;/span&gt;&lt;/font&gt;&lt;/font&gt; 
&lt;tr style="height:22.5pt"&gt;
&lt;td style="border-right:windowtext 1pt solid;padding-right:5.4pt;border-top:#d4d0c8;padding-left:5.4pt;padding-bottom:0cm;border-left:windowtext 1pt solid;width:153pt;padding-top:0cm;border-bottom:windowtext 1pt solid;height:22.5pt;background-color:transparent" valign=top width=204&gt;
&lt;p style="margin:0cm 0cm 0pt"&gt;&lt;span lang=EN-US style="font-size:9pt;font-family:新宋体"&gt;&lt;font face=Arial size=2&gt;Lucene.Net.Search&lt;/font&gt;&lt;/span&gt; 
&lt;td style="border-right:windowtext 1pt solid;padding-right:5.4pt;border-top:#d4d0c8;padding-left:5.4pt;padding-bottom:0cm;border-left:#d4d0c8;width:270pt;padding-top:0cm;border-bottom:windowtext 1pt solid;height:22.5pt;background-color:transparent" valign=top width=360&gt;
&lt;p style="margin:0cm 0cm 0pt"&gt;&lt;font face=Arial&gt;&lt;font size=2&gt;&lt;span style="color:#333333;font-family:宋体"&gt;检索管理，根据查询条件，检索得到结果&lt;/span&gt;&lt;span lang=EN-US style="color:#333333;font-family:宋体"&gt;&lt;/span&gt;&lt;/font&gt;&lt;/font&gt; 
&lt;tr style="height:23.25pt"&gt;
&lt;td style="border-right:windowtext 1pt solid;padding-right:5.4pt;border-top:#d4d0c8;padding-left:5.4pt;padding-bottom:0cm;border-left:windowtext 1pt solid;width:153pt;padding-top:0cm;border-bottom:windowtext 1pt solid;height:23.25pt;background-color:transparent" valign=top width=204&gt;
&lt;p style="margin:0cm 0cm 0pt"&gt;&lt;font face=Arial&gt;&lt;font size=2&gt;&lt;span lang=EN-US style="font-size:9pt;font-family:新宋体"&gt;Lucene.Net.Store&lt;/span&gt;&lt;span lang=EN-US&gt;&lt;/span&gt;&lt;/font&gt;&lt;/font&gt; 
&lt;td style="border-right:windowtext 1pt solid;padding-right:5.4pt;border-top:#d4d0c8;padding-left:5.4pt;padding-bottom:0cm;border-left:#d4d0c8;width:270pt;padding-top:0cm;border-bottom:windowtext 1pt solid;height:23.25pt;background-color:transparent" valign=top width=360&gt;
&lt;p style="margin:0cm 0cm 0pt"&gt;&lt;font face=Arial&gt;&lt;font size=2&gt;&lt;span style="color:#333333;font-family:宋体"&gt;数据存储管理，主要包括一些底层的&lt;/span&gt;&lt;span lang=EN-US style="color:#333333;font-family:宋体"&gt;I/O&lt;/span&gt;&lt;span style="color:#333333;font-family:宋体"&gt;操作&lt;/span&gt;&lt;span lang=EN-US style="color:#333333;font-family:宋体"&gt;&lt;/span&gt;&lt;/font&gt;&lt;/font&gt; 
&lt;tr style="height:22.85pt"&gt;
&lt;td style="border-right:windowtext 1pt solid;padding-right:5.4pt;border-top:#d4d0c8;padding-left:5.4pt;padding-bottom:0cm;border-left:windowtext 1pt solid;width:153pt;padding-top:0cm;border-bottom:windowtext 1pt solid;height:22.85pt;background-color:transparent" valign=top width=204&gt;
&lt;p style="margin:0cm 0cm 0pt"&gt;&lt;font face=Arial&gt;&lt;font size=2&gt;&lt;span lang=EN-US style="font-size:9pt;font-family:新宋体"&gt;Lucene.Net.Util&lt;/span&gt;&lt;span lang=EN-US&gt;&lt;/span&gt;&lt;/font&gt;&lt;/font&gt; 
&lt;td style="border-right:windowtext 1pt solid;padding-right:5.4pt;border-top:#d4d0c8;padding-left:5.4pt;padding-bottom:0cm;border-left:#d4d0c8;width:270pt;padding-top:0cm;border-bottom:windowtext 1pt solid;height:22.85pt;background-color:transparent" valign=top width=360&gt;
&lt;p style="margin:0cm 0cm 0pt"&gt;&lt;font face=Arial&gt;&lt;font size=2&gt;&lt;span style="color:#333333;font-family:宋体"&gt;一些公用类&lt;/span&gt;&lt;span lang=EN-US style="color:#333333;font-family:宋体"&gt;&lt;/span&gt;&lt;/font&gt;&lt;/font&gt;&lt;/tbody&gt;&lt;/table&gt;
&lt;p style="margin:0cm 0cm 0pt"&gt;&lt;span lang=EN-US&gt;&lt;font face=Arial size=2&gt; &lt;/font&gt;&lt;/span&gt; 
&lt;p style="margin:0cm 0cm 0pt"&gt;&lt;font face=Arial&gt;&lt;font size=2&gt;&lt;span lang=EN-US&gt;1),&lt;/span&gt;&lt;span lang=EN-US style="font-size:9pt;font-family:新宋体"&gt; Lucene.Net.Analysis命名空间分析。&lt;/span&gt;&lt;/font&gt;&lt;/font&gt; 
&lt;p style="margin:0cm 0cm 0pt"&gt;&lt;font face=Arial&gt;&lt;font size=2&gt;&lt;span style="font-family:宋体"&gt;在&lt;/span&gt;&lt;span lang=EN-US style="font-size:9pt;font-family:新宋体"&gt;Lucene.Net.Analysis下，类的关系，可以看成有三个继承体系:&lt;/span&gt;&lt;/font&gt;&lt;/font&gt; 
&lt;p style="margin:0cm 0cm 0pt"&gt;&lt;font face=Arial&gt;&lt;font size=2&gt;&lt;span style="font-size:9pt;font-family:新宋体"&gt;词法分析器&lt;span lang=EN-US&gt;(&lt;span style="color:teal"&gt;Analyzer&lt;/span&gt;) ：&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:9pt;font-family:新宋体"&gt;词法过滤和分析的类，实际上是对&lt;/span&gt;&lt;span style="font-size:9pt;font-family:新宋体"&gt;分词器&lt;span lang=EN-US&gt;, 过滤器的综合包装类。&lt;/span&gt;&lt;/span&gt;&lt;/font&gt;&lt;/font&gt; 
&lt;p style="margin:0cm 0cm 0pt"&gt;&lt;span style="font-size:9pt;font-family:新宋体"&gt;&lt;font face=Arial&gt;&lt;font size=2&gt;分词器&lt;span lang=EN-US&gt;(&lt;span style="color:teal"&gt;Tokenizer&lt;/span&gt;)：对文本进行分词，可能是单字，词，二元切分等等。&lt;/span&gt;&lt;/font&gt;&lt;/font&gt;&lt;/span&gt; 
&lt;p style="margin:0cm 0cm 0pt 90pt;text-indent:-90pt"&gt;&lt;span style="font-size:9pt;font-family:新宋体"&gt;&lt;font face=Arial&gt;&lt;font size=2&gt;过滤器&lt;span lang=EN-US&gt;(&lt;span style="color:teal"&gt;TokenFilter&lt;/span&gt;)：对由分词器分词后的Token进行过滤，比如无意词(a ,是，的等等)或者其他的指定的需要过滤的词&lt;/span&gt;&lt;/font&gt;&lt;/font&gt;&lt;/span&gt; 
&lt;p style="margin:0cm 0cm 0pt 105pt;text-indent:-105pt"&gt;&lt;font face=Arial&gt;&lt;font size=2&gt;&lt;span style="font-family:宋体"&gt;下面看看每一个&lt;/span&gt;&lt;span style="font-size:9pt;font-family:新宋体"&gt;继承体系&lt;/span&gt;&lt;span style="font-family:宋体"&gt;都有那些相关类：&lt;/span&gt;&lt;/font&gt;&lt;/font&gt; 
&lt;p style="margin:0cm 0cm 0pt"&gt;&lt;span lang=EN-US&gt;&lt;font face=Arial size=2&gt; &lt;/font&gt;&lt;/span&gt; 
&lt;p style="margin:0cm 0cm 0pt"&gt;&lt;span style="font-size:9pt;font-family:新宋体"&gt;&lt;font face=Arial size=2&gt;词法分析器&lt;/font&gt;&lt;span lang=EN-US&gt;&lt;font face=Arial size=2&gt;(&lt;span style="color:teal"&gt;Analyzer&lt;/span&gt;)的相关类类关系图：&lt;br&gt;&lt;/font&gt;&lt;span style="color:teal"&gt;&lt;span lang=EN-US style="font-size:10.5pt;font-family:'Times New Roman'"&gt;&lt;font face=Arial&gt;&lt;font size=2&gt;&lt;font color="#000000"&gt; &lt;a href="http://blufiles.storage.live.com/y1pP_NC8edCFYm3cIkJIMYPj3BboSvCfMJrl7WpxgT-93oyA_uRI4E9Zp5oT172wh-Dvygx6i_d0F4" target="_blank"&gt;&lt;img style="width:467px;height:324px" height=200 alt=Analyzer src="http://blufiles.storage.live.com/y1pP_NC8edCFYm3cIkJIMYPj3BboSvCfMJrl7WpxgT-93oyA_uRI4E9Zp5oT172wh-Dvygx6i_d0F4" width=245&gt;&lt;/a&gt;&lt;br&gt;&lt;/font&gt;&lt;/font&gt;&lt;/font&gt;
&lt;p style="margin:0cm 0cm 0pt"&gt;&lt;span style="font-size:9pt;font-family:新宋体"&gt;&lt;font face=Arial color="#000000" size=2&gt;分词器&lt;/font&gt;&lt;span lang=EN-US&gt;&lt;font face=Arial&gt;&lt;font size=2&gt;&lt;font color="#000000"&gt;(&lt;/font&gt;&lt;span style="color:teal"&gt;Tokenizer&lt;/span&gt;&lt;/font&gt;&lt;/font&gt;&lt;font color="#000000"&gt;&lt;font face=Arial size=2&gt;) 的相关类类关系图：&lt;br&gt;&lt;a href="http://blufiles.storage.live.com/y1pP_NC8edCFYkw_19rYcw5TY5GylJIKLt5DuRh4_vHN4aBHP7kdmcP7VCIiiJnym5L_ZBjvuniecM" target="_blank"&gt;&lt;img style="width:480px;height:343px" height=200 alt=Tokenizer src="http://blufiles.storage.live.com/y1pP_NC8edCFYkw_19rYcw5TY5GylJIKLt5DuRh4_vHN4aBHP7kdmcP7VCIiiJnym5L_ZBjvuniecM" width=192&gt;&lt;/a&gt;&lt;br&gt;&lt;/font&gt;
&lt;p style="margin:0cm 0cm 0pt"&gt;&lt;span style="font-size:9pt;font-family:新宋体"&gt;&lt;font face=Arial&gt;&lt;font size=2&gt;过滤器&lt;span lang=EN-US&gt;(&lt;span style="color:teal"&gt;TokenFilter&lt;/span&gt;) 的相关类类关系图：&lt;/span&gt;&lt;/font&gt;&lt;/font&gt;&lt;/span&gt; 
&lt;p style="margin:0cm 0cm 0pt"&gt;&lt;font face=Arial size=2&gt;&lt;a href="http://blufiles.storage.live.com/y1pP_NC8edCFYljvHJrKOvYuEnyHUw2CNUiRUMf8iZmbzVqw6yrlQfph7z6BYA2X-4_mJSBIODz8c0" target="_blank"&gt;&lt;img style="width:497px;height:362px" height=200 alt=TokenFilter src="http://blufiles.storage.live.com/y1pP_NC8edCFYljvHJrKOvYuEnyHUw2CNUiRUMf8iZmbzVqw6yrlQfph7z6BYA2X-4_mJSBIODz8c0" width=211&gt;&lt;/a&gt;&lt;br&gt;&lt;/font&gt;
&lt;p style="margin:0cm 0cm 0pt"&gt;&lt;font face=Arial&gt;&lt;font size=2&gt;&lt;span style="font-family:宋体"&gt;上面的三个类关系体系里涉及到的主要类&lt;/span&gt;&lt;span lang=EN-US&gt;(&lt;/span&gt;&lt;span style="font-family:宋体"&gt;概念&lt;/span&gt;&lt;span lang=EN-US&gt;)&lt;/span&gt;&lt;span style="font-family:宋体"&gt;的简单说明：&lt;/span&gt;&lt;/font&gt;&lt;/font&gt;&lt;span lang=EN-US&gt;&lt;br&gt;&lt;br&gt;&lt;/span&gt;
&lt;p style="margin:0cm 0cm 0pt"&gt;
&lt;table style="border-right:medium none;border-top:medium none;margin:auto auto auto 5.4pt;border-left:medium none;width:423pt;border-bottom:medium none;border-collapse:collapse" cellspacing=0 cellpadding=0 width=564 border=1&gt;
&lt;tbody&gt;
&lt;tr style="height:15pt"&gt;
&lt;td style="border-right:windowtext 1pt solid;padding-right:5.4pt;border-top:windowtext 1pt solid;padding-left:5.4pt;padding-bottom:0cm;border-left:windowtext 1pt solid;width:99pt;padding-top:0cm;border-bottom:windowtext 1pt solid;height:15pt;background-color:transparent" valign=top width=132&gt;
&lt;p style="margin:0cm 0cm 0pt;text-align:center" align=center&gt;&lt;span style="font-family:宋体"&gt;&lt;font face=Arial size=2&gt;类名&lt;/font&gt;&lt;/span&gt; 
&lt;td style="border-right:windowtext 1pt solid;padding-right:5.4pt;border-top:windowtext 1pt solid;padding-left:5.4pt;padding-bottom:0cm;border-left:#d4d0c8;width:324pt;padding-top:0cm;border-bottom:windowtext 1pt solid;height:15pt;background-color:transparent" valign=top width=432&gt;
&lt;p style="margin:0cm 0cm 0pt;text-align:center" align=center&gt;&lt;span style="font-family:宋体"&gt;&lt;font face=Arial size=2&gt;功能说明&lt;/font&gt;&lt;/span&gt; 
&lt;tr style="height:15pt"&gt;
&lt;td style="border-right:windowtext 1pt solid;padding-right:5.4pt;border-top:#d4d0c8;padding-left:5.4pt;padding-bottom:0cm;border-left:windowtext 1pt solid;width:99pt;padding-top:0cm;border-bottom:windowtext 1pt solid;height:15pt;background-color:transparent" valign=top width=132&gt;
&lt;p style="margin:0cm 0cm 0pt"&gt;&lt;font face=Arial&gt;&lt;font size=2&gt;&lt;span lang=EN-US style="font-size:9pt;font-family:新宋体"&gt;Analyzer&lt;/span&gt;&lt;span lang=EN-US&gt;&lt;/span&gt;&lt;/font&gt;&lt;/font&gt; 
&lt;td style="border-right:windowtext 1pt solid;padding-right:5.4pt;border-top:#d4d0c8;padding-left:5.4pt;padding-bottom:0cm;border-left:#d4d0c8;width:324pt;padding-top:0cm;border-bottom:windowtext 1pt solid;height:15pt;background-color:transparent" valign=top width=432&gt;
&lt;p style="margin:0cm 0cm 0pt"&gt;&lt;font face=Arial&gt;&lt;font size=2&gt;&lt;span style="font-size:9pt;font-family:新宋体"&gt;分析器基类，&lt;/span&gt;&lt;span style="font-size:9pt;font-family:新宋体"&gt;词法过滤和分析的类&lt;/span&gt;&lt;span lang=EN-US style="font-size:9pt;font-family:新宋体"&gt;,即把文本分解成TokenStream,即Token的序列。Analyzer只是做包装，主要还是Tokenizer在起作用&lt;/span&gt;&lt;span lang=EN-US&gt;&lt;/span&gt;&lt;/font&gt;&lt;/font&gt; 
&lt;tr style="height:14.25pt"&gt;
&lt;td style="border-right:windowtext 1pt solid;padding-right:5.4pt;border-top:#d4d0c8;padding-left:5.4pt;padding-bottom:0cm;border-left:windowtext 1pt solid;width:99pt;padding-top:0cm;border-bottom:windowtext 1pt solid;height:14.25pt;background-color:transparent" valign=top width=132&gt;
&lt;p style="margin:0cm 0cm 0pt"&gt;&lt;font face=Arial&gt;&lt;font size=2&gt;&lt;span lang=EN-US style="font-size:9pt;font-family:新宋体"&gt;StopAnalyzer&lt;/span&gt;&lt;span lang=EN-US&gt;&lt;/span&gt;&lt;/font&gt;&lt;/font&gt; 
&lt;td style="border-right:windowtext 1pt solid;padding-right:5.4pt;border-top:#d4d0c8;padding-left:5.4pt;padding-bottom:0cm;border-left:#d4d0c8;width:324pt;padding-top:0cm;border-bottom:windowtext 1pt solid;height:14.25pt;background-color:transparent" valign=top width=432&gt;
&lt;p style="margin:0cm 0cm 0pt"&gt;&lt;font face=Arial&gt;&lt;font size=2&gt;&lt;span lang=EN-US style="font-size:9pt;font-family:新宋体"&gt;Analyzer扩展类之一，SimpleAnalyzer功能基础上加上过滤词功能&lt;/span&gt;&lt;span lang=EN-US&gt;&lt;/span&gt;&lt;/font&gt;&lt;/font&gt; 
&lt;tr style="height:21pt"&gt;
&lt;td style="border-right:windowtext 1pt solid;padding-right:5.4pt;border-top:#d4d0c8;padding-left:5.4pt;padding-bottom:0cm;border-left:windowtext 1pt solid;width:99pt;padding-top:0cm;border-bottom:windowtext 1pt solid;height:21pt;background-color:transparent" valign=top width=132&gt;
&lt;p style="margin:0cm 0cm 0pt"&gt;&lt;span lang=EN-US style="font-size:9pt;font-family:新宋体"&gt;&lt;font face=Arial&gt;&lt;font size=2&gt;StandardAnalyzer&lt;/font&gt;&lt;/font&gt;&lt;/span&gt; 
&lt;td style="border-right:windowtext 1pt solid;padding-right:5.4pt;border-top:#d4d0c8;padding-left:5.4pt;padding-bottom:0cm;border-left:#d4d0c8;width:324pt;padding-top:0cm;border-bottom:windowtext 1pt solid;height:21pt;background-color:transparent" valign=top width=432&gt;
&lt;p style="margin:0cm 0cm 0pt"&gt;&lt;span lang=EN-US style="font-size:9pt;font-family:新宋体"&gt;&lt;font face=Arial&gt;&lt;font size=2&gt;Analyzer扩展类之一，也是最常用的分析器，支持中文，日文等，单字切分。&lt;/font&gt;&lt;/font&gt;&lt;/span&gt; 
&lt;tr style="height:15pt"&gt;
&lt;td style="border-right:windowtext 1pt solid;padding-right:5.4pt;border-top:#d4d0c8;padding-left:5.4pt;padding-bottom:0cm;border-left:windowtext 1pt solid;width:99pt;padding-top:0cm;border-bottom:windowtext 1pt solid;height:15pt;background-color:transparent" valign=top width=132&gt;
&lt;p style="margin:0cm 0cm 0pt"&gt;&lt;font face=Arial&gt;&lt;font size=2&gt;&lt;span lang=EN-US style="font-size:9pt;font-family:新宋体"&gt;SimpleAnalyzer&lt;/span&gt;&lt;span lang=EN-US&gt;&lt;/span&gt;&lt;/font&gt;&lt;/font&gt; 
&lt;td style="border-right:windowtext 1pt solid;padding-right:5.4pt;border-top:#d4d0c8;padding-left:5.4pt;padding-bottom:0cm;border-left:#d4d0c8;width:324pt;padding-top:0cm;border-bottom:windowtext 1pt solid;height:15pt;background-color:transparent" valign=top width=432&gt;
&lt;p style="margin:0cm 0cm 0pt"&gt;&lt;font face=Arial&gt;&lt;font size=2&gt;&lt;span lang=EN-US style="font-size:9pt;font-family:新宋体"&gt;Analyzer扩展类之一，&lt;/span&gt;&lt;span style="font-size:9pt;font-family:新宋体"&gt;将除去字符之外的符号全部过滤掉&lt;span lang=EN-US&gt;,并且将所有的字符小写(大写)化&lt;/span&gt;&lt;/span&gt;&lt;span lang=EN-US&gt;&lt;/span&gt;&lt;/font&gt;&lt;/font&gt; 
&lt;tr style="height:14.25pt"&gt;
&lt;td style="border-right:windowtext 1pt solid;padding-right:5.4pt;border-top:#d4d0c8;padding-left:5.4pt;padding-bottom:0cm;border-left:windowtext 1pt solid;width:99pt;padding-top:0cm;border-bottom:windowtext 1pt solid;height:14.25pt;background-color:transparent" valign=top width=132&gt;
&lt;p style="margin:0cm 0cm 0pt"&gt;&lt;font face=Arial&gt;&lt;font size=2&gt;&lt;span lang=EN-US style="font-size:9pt;font-family:新宋体"&gt;Token&lt;/span&gt;&lt;span lang=EN-US&gt;&lt;/span&gt;&lt;/font&gt;&lt;/font&gt; 
&lt;td style="border-right:windowtext 1pt solid;padding-right:5.4pt;border-top:#d4d0c8;padding-left:5.4pt;padding-bottom:0cm;border-left:#d4d0c8;width:324pt;padding-top:0cm;border-bottom:windowtext 1pt solid;height:14.25pt;background-color:transparent" valign=top width=432&gt;
&lt;p style="margin:0cm 0cm 0pt"&gt;&lt;span lang=EN-US style="font-size:9pt;font-family:新宋体"&gt;&lt;font face=Arial&gt;&lt;font size=2&gt;DotLucene最基本的单位，以单字切分则每个单字为一个Token,如果以中文分词来切分则每个词为一个Token&lt;/font&gt;&lt;/font&gt;&lt;/span&gt; 
&lt;tr style="height:21.75pt"&gt;
&lt;td style="border-right:windowtext 1pt solid;padding-right:5.4pt;border-top:#d4d0c8;padding-left:5.4pt;padding-bottom:0cm;border-left:windowtext 1pt solid;width:99pt;padding-top:0cm;border-bottom:windowtext 1pt solid;height:21.75pt;background-color:transparent" valign=top width=132&gt;
&lt;p style="margin:0cm 0cm 0pt"&gt;&lt;font face=Arial&gt;&lt;font size=2&gt;&lt;span lang=EN-US style="font-size:9pt;font-family:新宋体"&gt;TokenStream&lt;/span&gt;&lt;span lang=EN-US&gt;&lt;/span&gt;&lt;/font&gt;&lt;/font&gt; 
&lt;td style="border-right:windowtext 1pt solid;padding-right:5.4pt;border-top:#d4d0c8;padding-left:5.4pt;padding-bottom:0cm;border-left:#d4d0c8;width:324pt;padding-top:0cm;border-bottom:windowtext 1pt solid;height:21.75pt;background-color:transparent" valign=top width=432&gt;
&lt;p style="margin:0cm 0cm 0pt"&gt;&lt;font face=Arial&gt;&lt;font size=2&gt;&lt;span lang=EN-US style="font-size:9pt;font-family:新宋体"&gt;Token的序列&lt;/span&gt;&lt;span lang=EN-US&gt;&lt;/span&gt;&lt;/font&gt;&lt;/font&gt; 
&lt;tr style="height:22.45pt"&gt;
&lt;td style="border-right:windowtext 1pt solid;padding-right:5.4pt;border-top:#d4d0c8;padding-left:5.4pt;padding-bottom:0cm;border-left:windowtext 1pt solid;width:99pt;padding-top:0cm;border-bottom:windowtext 1pt solid;height:22.45pt;background-color:transparent" valign=top width=132&gt;
&lt;p style="margin:0cm 0cm 0pt"&gt;&lt;font face=Arial&gt;&lt;font size=2&gt;&lt;span lang=EN-US style="font-size:9pt;font-family:新宋体"&gt;Tokenizer&lt;/span&gt;&lt;span lang=EN-US&gt;&lt;/span&gt;&lt;/font&gt;&lt;/font&gt; 
&lt;td style="border-right:windowtext 1pt solid;padding-right:5.4pt;border-top:#d4d0c8;padding-left:5.4pt;padding-bottom:0cm;border-left:#d4d0c8;width:324pt;padding-top:0cm;border-bottom:windowtext 1pt solid;height:22.45pt;background-color:transparent" valign=top width=432&gt;
&lt;p style="margin:0cm 0cm 0pt"&gt;&lt;font face=Arial&gt;&lt;font size=2&gt;&lt;span style="font-size:9pt;font-family:新宋体"&gt;继承于&lt;span lang=EN-US&gt;TokenStream，用于分词。一般扩展的自定义的分词都应该继承这个类&lt;/span&gt;&lt;/span&gt;&lt;span lang=EN-US&gt;&lt;/span&gt;&lt;/font&gt;&lt;/font&gt; 
&lt;tr style="height:22.75pt"&gt;
&lt;td style="border-right:windowtext 1pt solid;padding-right:5.4pt;border-top:#d4d0c8;padding-left:5.4pt;padding-bottom:0cm;border-left:windowtext 1pt solid;width:99pt;padding-top:0cm;border-bottom:windowtext 1pt solid;height:22.75pt;background-color:transparent" valign=top width=132&gt;
&lt;p style="margin:0cm 0cm 0pt"&gt;&lt;span lang=EN-US style="font-size:9pt;color:teal;font-family:新宋体"&gt;&lt;font face=Arial size=2&gt; &lt;/font&gt;&lt;/span&gt; 
&lt;td style="border-right:windowtext 1pt solid;padding-right:5.4pt;border-top:#d4d0c8;padding-left:5.4pt;padding-bottom:0cm;border-left:#d4d0c8;width:324pt;padding-top:0cm;border-bottom:windowtext 1pt solid;height:22.75pt;background-color:transparent" valign=top width=432&gt;
&lt;p style="margin:0cm 0cm 0pt"&gt;&lt;span lang=EN-US style="font-size:9pt;color:teal;font-family:新宋体"&gt;&lt;font face=Arial size=2&gt; &lt;/font&gt;&lt;/span&gt; 
&lt;tr style="height:29.05pt"&gt;
&lt;td style="border-right:windowtext 1pt solid;padding-right:5.4pt;border-top:#d4d0c8;padding-left:5.4pt;padding-bottom:0cm;border-left:windowtext 1pt solid;width:99pt;padding-top:0cm;border-bottom:windowtext 1pt solid;height:29.05pt;background-color:transparent" valign=top width=132&gt;
&lt;p style="margin:0cm 0cm 0pt"&gt;&lt;font face=Arial&gt;&lt;font size=2&gt;&lt;span lang=EN-US style="font-size:9pt;font-family:新宋体"&gt;StandardTokenizer&lt;/span&gt;&lt;span lang=EN-US&gt;&lt;/span&gt;&lt;/font&gt;&lt;/font&gt; 
&lt;td style="border-right:windowtext 1pt solid;padding-right:5.4pt;border-top:#d4d0c8;padding-left:5.4pt;padding-bottom:0cm;border-left:#d4d0c8;width:324pt;padding-top:0cm;border-bottom:windowtext 1pt solid;height:29.05pt;background-color:transparent" valign=top width=432&gt;
&lt;p style="margin:0cm 0cm 0pt"&gt;&lt;font face=Arial&gt;&lt;font size=2&gt;&lt;span lang=EN-US style="font-size:9pt;font-family:新宋体"&gt;Tokenizer扩展类之一，也是最常用的，支持中文，基于单字切分&lt;/span&gt;&lt;span lang=EN-US&gt;&lt;/span&gt;&lt;/font&gt;&lt;/font&gt; 
&lt;tr style="height:30pt"&gt;
&lt;td style="border-right:windowtext 1pt solid;padding-right:5.4pt;border-top:#d4d0c8;padding-left:5.4pt;padding-bottom:0cm;border-left:windowtext 1pt solid;width:99pt;padding-top:0cm;border-bottom:windowtext 1pt solid;height:30pt;background-color:transparent" valign=top width=132&gt;
&lt;p style="margin:0cm 0cm 0pt"&gt;&lt;font face=Arial&gt;&lt;font size=2&gt;&lt;span lang=EN-US style="font-size:9pt;font-family:新宋体"&gt;TokenFilter&lt;/span&gt;&lt;span lang=EN-US&gt;&lt;/span&gt;&lt;/font&gt;&lt;/font&gt; 
&lt;td style="border-right:windowtext 1pt solid;padding-right:5.4pt;border-top:#d4d0c8;padding-left:5.4pt;padding-bottom:0cm;border-left:#d4d0c8;width:324pt;padding-top:0cm;border-bottom:windowtext 1pt solid;height:30pt;background-color:transparent" valign=top width=432&gt;
&lt;p style="margin:0cm 0cm 0pt"&gt;&lt;font face=Arial&gt;&lt;font size=2&gt;&lt;span style="font-size:9pt;font-family:新宋体"&gt;继承于&lt;span lang=EN-US&gt;TokenStream的子类,用于过滤。一般拓展的自定义的过滤类都应该继承该类&lt;/span&gt;&lt;/span&gt;&lt;span lang=EN-US&gt;&lt;/span&gt;&lt;/font&gt;&lt;/font&gt; 
&lt;tr style="height:24pt"&gt;
&lt;td style="border-right:windowtext 1pt solid;padding-right:5.4pt;border-top:#d4d0c8;padding-left:5.4pt;padding-bottom:0cm;border-left:windowtext 1pt solid;width:99pt;padding-top:0cm;border-bottom:windowtext 1pt solid;height:24pt;background-color:transparent" valign=top width=132&gt;
&lt;p style="margin:0cm 0cm 0pt"&gt;&lt;span lang=EN-US style="font-size:9pt;font-family:新宋体"&gt;&lt;font face=Arial&gt;&lt;font size=2&gt;StandardFilter&lt;/font&gt;&lt;/font&gt;&lt;/span&gt; 
&lt;td style="border-right:windowtext 1pt solid;padding-right:5.4pt;border-top:#d4d0c8;padding-left:5.4pt;padding-bottom:0cm;border-left:#d4d0c8;width:324pt;padding-top:0cm;border-bottom:windowtext 1pt solid;height:24pt;background-color:transparent" valign=top width=432&gt;
&lt;p style="margin:0cm 0cm 0pt"&gt;&lt;span lang=EN-US style="font-size:9pt;font-family:新宋体"&gt;&lt;font face=Arial&gt;&lt;font size=2&gt;TokenFilter拓展类之一，过滤英文字符的复数和dot（.）号.&lt;/font&gt;&lt;/font&gt;&lt;/span&gt; 
&lt;tr style="height:23.25pt"&gt;
&lt;td style="border-right:windowtext 1pt solid;padding-right:5.4pt;border-top:#d4d0c8;padding-left:5.4pt;padding-bottom:0cm;border-left:windowtext 1pt solid;width:99pt;padding-top:0cm;border-bottom:windowtext 1pt solid;height:23.25pt;background-color:transparent" valign=top width=132&gt;
&lt;p style="margin:0cm 0cm 0pt"&gt;&lt;span lang=EN-US style="font-size:9pt;font-family:新宋体"&gt;&lt;font face=Arial&gt;&lt;font size=2&gt;LowerCaseFilter&lt;/font&gt;&lt;/font&gt;&lt;/span&gt; 
&lt;td style="border-right:windowtext 1pt solid;padding-right:5.4pt;border-top:#d4d0c8;padding-left:5.4pt;padding-bottom:0cm;border-left:#d4d0c8;width:324pt;padding-top:0cm;border-bottom:windowtext 1pt solid;height:23.25pt;background-color:transparent" valign=top width=432&gt;
&lt;p style="margin:0cm 0cm 0pt"&gt;&lt;span style="font-size:9pt;font-family:新宋体"&gt;&lt;font face=Arial&gt;&lt;font size=2&gt;对所有英文小写化&lt;span lang=EN-US&gt;&lt;/span&gt;&lt;/font&gt;&lt;/font&gt;&lt;/span&gt; 
&lt;tr style="height:22.5pt"&gt;
&lt;td style="border-right:windowtext 1pt solid;padding-right:5.4pt;border-top:#d4d0c8;padding-left:5.4pt;padding-bottom:0cm;border-left:windowtext 1pt solid;width:99pt;padding-top:0cm;border-bottom:windowtext 1pt solid;height:22.5pt;background-color:transparent" valign=top width=132&gt;
&lt;p style="margin:0cm 0cm 0pt"&gt;&lt;span lang=EN-US style="font-size:9pt;font-family:新宋体"&gt;&lt;font face=Arial&gt;&lt;font size=2&gt;StopFilter&lt;/font&gt;&lt;/font&gt;&lt;/span&gt; 
&lt;td style="border-right:windowtext 1pt solid;padding-right:5.4pt;border-top:#d4d0c8;padding-left:5.4pt;padding-bottom:0cm;border-left:#d4d0c8;width:324pt;padding-top:0cm;border-bottom:windowtext 1pt solid;height:22.5pt;background-color:transparent" valign=top width=432&gt;
&lt;p style="margin:0cm 0cm 0pt"&gt;&lt;span style="font-size:9pt;font-family:新宋体"&gt;&lt;font face=Arial&gt;&lt;font size=2&gt;过滤掉指定的过滤词&lt;span lang=EN-US&gt;&lt;/span&gt;&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/tbody&gt;&lt;/table&gt;
&lt;p style="margin:0cm 0cm 0pt"&gt;&lt;span lang=EN-US&gt;&lt;font face=Arial size=2&gt; &lt;/font&gt;&lt;/span&gt; 
&lt;p style="margin:0cm 0cm 0pt"&gt;&lt;font face=Arial&gt;&lt;font size=2&gt;&lt;span style="font-family:宋体"&gt;在所有上面这个类之中，我们经常用的也是所有&lt;/span&gt;&lt;span lang=EN-US&gt;Analyzer&lt;/span&gt;&lt;span style="font-family:宋体"&gt;中最复杂的就是&lt;/span&gt;&lt;/font&gt;&lt;/font&gt;&lt;span lang=EN-US style="font-size:9pt;font-family:新宋体"&gt;&lt;font face=Arial&gt;&lt;font size=2&gt;StandardAnalyzer(本身不复杂，其调用的分词器复杂)，下面对这个类做一个简单的分析:&lt;br&gt;StandardAnalyzer最核心，最主要的方法：&lt;br&gt;&lt;span style="color:teal"&gt;&lt;/span&gt;&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;
&lt;p style="margin:0cm 0cm 0pt;text-align:left" align=left&gt;&lt;span lang=EN-US style="font-size:9pt;font-family:新宋体"&gt;&lt;font face=Arial&gt;&lt;font size=2&gt;&lt;span&gt;         &lt;/span&gt;&lt;span style="color:blue"&gt;public&lt;/span&gt; &lt;span style="color:blue"&gt;override&lt;/span&gt; &lt;span style="color:teal"&gt;TokenStream&lt;/span&gt; TokenStream(System.&lt;span style="color:teal"&gt;String&lt;/span&gt; fieldName, System.IO.&lt;span style="color:teal"&gt;TextReader&lt;/span&gt; reader)&lt;/font&gt;&lt;/font&gt;&lt;/span&gt; 
&lt;p style="margin:0cm 0cm 0pt;text-align:left" align=left&gt;&lt;span lang=EN-US style="font-size:9pt;font-family:新宋体"&gt;&lt;font face=Arial&gt;&lt;font size=2&gt;&lt;span&gt;         &lt;/span&gt;{&lt;/font&gt;&lt;/font&gt;&lt;/span&gt; 
&lt;p style="margin:0cm 0cm 0pt;text-align:left" align=left&gt;&lt;span lang=EN-US style="font-size:9pt;font-family:新宋体"&gt;&lt;font face=Arial&gt;&lt;font size=2&gt;&lt;span&gt;              &lt;/span&gt;&lt;span style="color:teal"&gt;TokenStream&lt;/span&gt; result = &lt;span style="color:blue"&gt;new&lt;/span&gt; &lt;span style="color:teal"&gt;StandardTokenizer&lt;/span&gt;(reader);&lt;/font&gt;&lt;/font&gt;&lt;/span&gt; 
&lt;p style="margin:0cm 0cm 0pt;text-align:left" align=left&gt;&lt;span lang=EN-US style="font-size:9pt;font-family:新宋体"&gt;&lt;font face=Arial&gt;&lt;font size=2&gt;&lt;span&gt;              &lt;/span&gt;result = &lt;span style="color:blue"&gt;new&lt;/span&gt; &lt;span style="color:teal"&gt;StandardFilter&lt;/span&gt;(result);&lt;/font&gt;&lt;/font&gt;&lt;/span&gt; 
&lt;p style="margin:0cm 0cm 0pt;text-align:left" align=left&gt;&lt;span lang=EN-US style="font-size:9pt;font-family:新宋体"&gt;&lt;font face=Arial&gt;&lt;font size=2&gt;&lt;span&gt;              &lt;/span&gt;result = &lt;span style="color:blue"&gt;new&lt;/span&gt; &lt;span style="color:teal"&gt;LowerCaseFilter&lt;/span&gt;(result);&lt;/font&gt;&lt;/font&gt;&lt;/span&gt; 
&lt;p style="margin:0cm 0cm 0pt;text-align:left" align=left&gt;&lt;span lang=EN-US style="font-size:9pt;font-family:新宋体"&gt;&lt;font face=Arial&gt;&lt;font size=2&gt;&lt;span&gt;              &lt;/span&gt;result = &lt;span style="color:blue"&gt;new&lt;/span&gt; &lt;span style="color:teal"&gt;StopFilter&lt;/span&gt;(result, stopSet);&lt;/font&gt;&lt;/font&gt;&lt;/span&gt; 
&lt;p style="margin:0cm 0cm 0pt;text-align:left" align=left&gt;&lt;span lang=EN-US style="font-size:9pt;font-family:新宋体"&gt;&lt;font face=Arial&gt;&lt;font size=2&gt;&lt;span&gt;              &lt;/span&gt;&lt;span style="color:blue"&gt;return&lt;/span&gt; result;&lt;/font&gt;&lt;/font&gt;&lt;/span&gt; 
&lt;p style="margin:0cm 0cm 0pt"&gt;&lt;span lang=EN-US style="font-size:9pt;font-family:新宋体"&gt;&lt;font face=Arial&gt;&lt;font size=2&gt;&lt;span&gt;         &lt;/span&gt;}&lt;/font&gt;&lt;/font&gt;&lt;/span&gt; 
&lt;p style="margin:0cm 0cm 0pt"&gt;&lt;span style="font-size:9pt;font-family:新宋体"&gt;&lt;font face=Arial&gt;&lt;font size=2&gt;就是调用&lt;span lang=EN-US style="color:teal"&gt;StandardTokenizer&lt;/span&gt;分词器对文本分词。然后调用三个过滤器&lt;span lang=EN-US&gt;(作用表格有写)，其中的StandardTokenizer类及相关的类比较复杂，目前还没有完全理解。所以下面的文字是需要用批判眼光来阅读的。说白了，我是一边猜，一边看源码。以求的最准确的理解。&lt;/span&gt;&lt;/font&gt;&lt;/font&gt;&lt;/span&gt; 
&lt;p style="margin:0cm 0cm 0pt"&gt;&lt;span style="font-size:9pt;font-family:新宋体"&gt;&lt;font face=Arial&gt;&lt;font size=2&gt;先做个简单的测试，通过结果来分析：&lt;span lang=EN-US&gt;&lt;/span&gt;&lt;/font&gt;&lt;/font&gt;&lt;/span&gt; 
&lt;p style="margin:0cm 0cm 0pt;text-indent:54pt;text-align:left" align=left&gt;&lt;font face=Arial&gt;&lt;font size=2&gt;&lt;span lang=EN-US style="font-size:9pt;color:blue;font-family:新宋体"&gt;string&lt;/span&gt;&lt;span lang=EN-US style="font-size:9pt;font-family:新宋体"&gt; sTemp = &lt;span style="color:maroon"&gt;&amp;quot;我们是中国人,We are chinese&amp;quot;&lt;/span&gt;;&lt;/span&gt;&lt;/font&gt;&lt;/font&gt; 
&lt;p style="margin:0cm 0cm 0pt;text-align:left" align=left&gt;&lt;span lang=EN-US style="font-size:9pt;font-family:新宋体"&gt;&lt;font face=Arial&gt;&lt;font size=2&gt;&lt;span&gt;    &lt;/span&gt;&lt;span&gt;        &lt;/span&gt;&lt;span style="color:teal"&gt;Analyzer&lt;/span&gt; analyzer = &lt;span style="color:blue"&gt;new&lt;/span&gt; &lt;span style="color:teal"&gt;StandardAnalyzer&lt;/span&gt;() ;&lt;/font&gt;&lt;/font&gt;&lt;/span&gt; 
&lt;p style="margin:0cm 0cm 0pt;text-align:left" align=left&gt;&lt;span lang=EN-US style="font-size:9pt;font-family:新宋体"&gt;&lt;font face=Arial&gt;&lt;font size=2&gt;&lt;span&gt;            &lt;/span&gt;&lt;span style="color:teal"&gt;StringReader&lt;/span&gt; sr = &lt;span style="color:blue"&gt;new&lt;/span&gt; &lt;span style="color:teal"&gt;StringReader&lt;/span&gt;(sTemp);&lt;/font&gt;&lt;/font&gt;&lt;/span&gt; 
&lt;p style="margin:0cm 0cm 0pt;text-align:left" align=left&gt;&lt;span lang=EN-US style="font-size:9pt;font-family:新宋体"&gt;&lt;font face=Arial&gt;&lt;font size=2&gt;&lt;span&gt;            &lt;/span&gt;&lt;span style="color:teal"&gt;TokenStream&lt;/span&gt; ts = analyzer.TokenStream(sr);&lt;/font&gt;&lt;/font&gt;&lt;/span&gt; 
&lt;p style="margin:0cm 0cm 0pt;text-align:left" align=left&gt;&lt;span lang=EN-US style="font-size:9pt;font-family:新宋体"&gt;&lt;font face=Arial&gt;&lt;font size=2&gt;&lt;span&gt;            &lt;/span&gt;Lucene.Net.Analysis.&lt;span style="color:teal"&gt;Token&lt;/span&gt; token = &lt;span style="color:blue"&gt;null&lt;/span&gt;;&lt;/font&gt;&lt;/font&gt;&lt;/span&gt; 
&lt;p style="margin:0cm 0cm 0pt;text-align:left" align=left&gt;&lt;span lang=EN-US style="font-size:9pt;font-family:新宋体"&gt;&lt;font face=Arial&gt;&lt;font size=2&gt;&lt;span&gt;            &lt;/span&gt;&lt;span style="color:blue"&gt;while&lt;/span&gt; ((token = ts.Next()) != &lt;span style="color:blue"&gt;null&lt;/span&gt;)&lt;/font&gt;&lt;/font&gt;&lt;/span&gt; 
&lt;p style="margin:0cm 0cm 0pt;text-align:left" align=left&gt;&lt;span lang=EN-US style="font-size:9pt;font-family:新宋体"&gt;&lt;font face=Arial&gt;&lt;font size=2&gt;&lt;span&gt;            &lt;/span&gt;{&lt;/font&gt;&lt;/font&gt;&lt;/span&gt; 
&lt;p style="margin:0cm 0cm 0pt;text-align:left" align=left&gt;&lt;span lang=EN-US style="font-size:9pt;font-family:新宋体"&gt;&lt;font face=Arial&gt;&lt;font size=2&gt;&lt;span&gt;                &lt;/span&gt;&lt;span style="color:blue"&gt;this&lt;/span&gt;.txtResult.Text += token.ToString();&lt;/font&gt;&lt;/font&gt;&lt;/span&gt; 
&lt;p style="margin:0cm 0cm 0pt"&gt;&lt;span lang=EN-US style="font-size:9pt;font-family:新宋体"&gt;&lt;font face=Arial&gt;&lt;font size=2&gt;&lt;span&gt;            &lt;/span&gt;}&lt;/font&gt;&lt;/font&gt;&lt;/span&gt; 
&lt;p style="margin:0cm 0cm 0pt"&gt;&lt;span lang=EN-US style="font-size:9pt;font-family:新宋体"&gt;&lt;font face=Arial&gt;&lt;font size=2&gt;txtResult是Winform的TextBox，输出结果如下：&lt;/font&gt;&lt;/font&gt;&lt;/span&gt; 
&lt;p style="margin:0cm 0cm 0pt"&gt;&lt;font face=Arial&gt;&lt;font size=2&gt;&lt;span lang=EN-US&gt;(&lt;/span&gt;&lt;span style="font-family:宋体"&gt;我&lt;/span&gt;&lt;span lang=EN-US&gt;,0,1,type=&amp;lt;CJ&amp;gt;)(&lt;/span&gt;&lt;span style="font-family:宋体"&gt;们&lt;/span&gt;&lt;span lang=EN-US&gt;,1,2,type=&amp;lt;CJ&amp;gt;)(&lt;/span&gt;&lt;span style="font-family:宋体"&gt;是&lt;/span&gt;&lt;span lang=EN-US&gt;,2,3,type=&amp;lt;CJ&amp;gt;)(&lt;/span&gt;&lt;span style="font-family:宋体"&gt;中&lt;/span&gt;&lt;span lang=EN-US&gt;,3,4,type=&amp;lt;CJ&amp;gt;)(&lt;/span&gt;&lt;span style="font-family:宋体"&gt;国&lt;/span&gt;&lt;span lang=EN-US&gt;,4,5,type=&amp;lt;CJ&amp;gt;)(&lt;/span&gt;&lt;span style="font-family:宋体"&gt;人&lt;/span&gt;&lt;span lang=EN-US&gt;,5,6,type=&amp;lt;CJ&amp;gt;)(we,7,9,type=&amp;lt;ALPHANUM&amp;gt;)(chinese,14,21,type=&amp;lt;ALPHANUM&amp;gt;)&lt;/span&gt;&lt;/font&gt;&lt;/font&gt; 
&lt;p style="margin:0cm 0cm 0pt"&gt;&lt;span lang=EN-US&gt;&lt;font face=Arial size=2&gt; &lt;/font&gt;&lt;/span&gt; 
&lt;p style="margin:0cm 0cm 0pt"&gt;&lt;font face=Arial&gt;&lt;font size=2&gt;&lt;span style="font-family:宋体"&gt;拿&lt;/span&gt;&lt;span lang=EN-US&gt;(&lt;/span&gt;&lt;span style="font-family:宋体"&gt;我&lt;/span&gt;&lt;span lang=EN-US&gt;,0,1,type=&amp;lt;CJ&amp;gt;)&lt;/span&gt;&lt;span style="font-family:宋体"&gt;来分析，因为是单字切分，所以分解成了一个一个的字。其中&lt;/span&gt;&lt;span lang=EN-US&gt;0,1&lt;/span&gt;&lt;span style="font-family:宋体"&gt;表示&lt;/span&gt;&lt;span lang=EN-US&gt;”&lt;/span&gt;&lt;span style="font-family:宋体"&gt;我&lt;/span&gt;&lt;span lang=EN-US&gt;”&lt;/span&gt;&lt;span style="font-family:宋体"&gt;这个字在文本中&lt;/span&gt;&lt;span lang=EN-US style="font-size:9pt;font-family:新宋体"&gt;StartOffset，EndOffset，最后的&lt;/span&gt;&lt;span lang=EN-US&gt;type&lt;/span&gt;&lt;span style="font-family:宋体"&gt;表示文字的类型是英文&lt;/span&gt;&lt;span lang=EN-US&gt;,&lt;/span&gt;&lt;span style="font-family:宋体"&gt;数字&lt;/span&gt;&lt;span lang=EN-US&gt;,&lt;/span&gt;&lt;span style="font-family:宋体"&gt;还是是中文等等。在&lt;/span&gt;&lt;span lang=EN-US&gt;rc1.9&lt;/span&gt;&lt;span style="font-family:宋体"&gt;中支持的&lt;/span&gt;&lt;span lang=EN-US&gt;type&lt;/span&gt;&lt;span style="font-family:宋体"&gt;可以在&lt;/span&gt;&lt;span lang=EN-US style="font-size:9pt;font-family:新宋体"&gt;Lucene.Net.Analysis.Standard下的StandardTokenizerConstants类看到。而&lt;/span&gt;&lt;span lang=EN-US&gt;CJ&lt;/span&gt;&lt;span style="font-family:宋体"&gt;代表的是中文和日文的集合。不仅仅代表中文哦。&lt;/span&gt;&lt;span lang=EN-US&gt;&lt;/span&gt;&lt;/font&gt;&lt;/font&gt; 
&lt;p style="margin:0cm 0cm 0pt"&gt;&lt;font face=Arial&gt;&lt;font size=2&gt;&lt;span style="font-family:宋体"&gt;分析到这里，我有一个疑问。&lt;/span&gt;&lt;span lang=EN-US&gt;DotLucene&lt;/span&gt;&lt;span style="font-family:宋体"&gt;是怎么区别不同的文字的呢？那就是根据&lt;/span&gt;&lt;span lang=EN-US&gt;unicode&lt;/span&gt;&lt;span style="font-family:宋体"&gt;编码的范围区别不同的文字。不过这句话，是我&lt;/span&gt;&lt;span style="font-size:9pt;font-family:新宋体"&gt;猜出来，但我始终没能在&lt;span lang=EN-US&gt;DotLucene源码中找到能支持我这句话的原代码。所以猜测始终还是猜测。鉴于本次阅读DotLucene的目的是为了更好的使用，而非研究，所以对Lucene.Net.Analysis命名空间的分析只能就此打住。&lt;/span&gt;&lt;/span&gt;&lt;/font&gt;&lt;/font&gt; 
&lt;p style="margin:0cm 0cm 0pt"&gt;&lt;span lang=EN-US style="font-size:9pt;font-family:新宋体"&gt;&lt;font face=Arial size=2&gt; &lt;/font&gt;&lt;/span&gt; 
&lt;p style="margin:0cm 0cm 0pt"&gt;&lt;span style="font-size:9pt;font-family:新宋体"&gt;&lt;font face=Arial&gt;&lt;font size=2&gt;后记：&lt;span lang=EN-US&gt;&lt;/span&gt;&lt;/font&gt;&lt;/font&gt;&lt;/span&gt; 
&lt;p style="margin:0cm 0cm 0pt"&gt;&lt;font face=Arial&gt;&lt;font size=2&gt;&lt;span style="font-size:9pt;font-family:新宋体"&gt;据我所知，现在已经有很多种第三方的&lt;span lang=EN-US&gt;Analyzer。SourceForce上的有一个ChineseAnalyzer,基于二元分词算法实现中文分词。还有基于词库实现中文分词的Analyzer,一般认为。使用针对中文优化过的Analyzer可以提高搜索准确度，但是对于大多数的搜索应用，StandardAnalyzer 绝对够用，好用。为什么呢？打个比方，拿&lt;/span&gt;&lt;/span&gt;&lt;span lang=EN-US style="font-size:9pt"&gt;”&lt;/span&gt;&lt;span style="font-size:9pt;font-family:新宋体"&gt;国际经济&lt;/span&gt;&lt;span lang=EN-US style="font-size:9pt"&gt;”&lt;/span&gt;&lt;span style="font-size:9pt;font-family:新宋体"&gt;四个字来说，如果是&lt;span lang=EN-US&gt;StandardAnalyzer的话，无论搜索 国际，经济，还是国际经济都能搜索到。但是如果用中文分词，那就难说。那就看你的中文分词怎么分 &lt;/span&gt;&lt;/span&gt;&lt;span lang=EN-US style="font-size:9pt"&gt;“&lt;/span&gt;&lt;span style="font-size:9pt;font-family:新宋体"&gt;国际经济&lt;/span&gt;&lt;span lang=EN-US style="font-size:9pt"&gt;’&lt;/span&gt;&lt;span style="font-size:9pt;font-family:新宋体"&gt;拉&lt;span lang=EN-US&gt;(二元分词算法的Analyzer不需要考虑这个问题)。我在给CS做的搜索系统，也是用StandardAnalyzer，绝对不用其他的Analyzer。以上纯属个人拙见。&lt;/span&gt;&lt;/span&gt;&lt;span lang=EN-US&gt;&lt;/span&gt;&lt;/font&gt;&lt;/font&gt; 
&lt;p style="margin:0cm 0cm 0pt"&gt;&lt;font face=Arial size=2&gt;&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;img src="http://c.services.spaces.live.com/CollectionWebService/c.gif?cid=-2510522667657978555&amp;page=RSS%3a+DotLucene%e7%ac%94%e8%ae%b0(1)----Lucene.Net.Analysis&amp;referrer=" width="1px" height="1px" border="0" alt=""&gt;&lt;img style="position:absolute" alt="" width="0px" height="0px" src="http://c.live.com/c.gif?NC=31263&amp;amp;NA=1149&amp;amp;PI=73329&amp;amp;RF=&amp;amp;DI=3919&amp;amp;PS=85545&amp;amp;TP=eddyzhoufeng.spaces.live.com&amp;amp;GT1=eddyzhoufeng"&gt;</description><comments>http://eddyzhoufeng.spaces.live.com/Blog/cns!DD28D4EF61AE1D45!770.entry#comment</comments><guid isPermaLink="true">http://eddyzhoufeng.spaces.live.com/Blog/cns!DD28D4EF61AE1D45!770.entry</guid><pubDate>Wed, 17 Oct 2007 16:41:10 GMT</pubDate><slash:comments>1</slash:comments><msn:type>blogentry</msn:type><live:type>blogentry</live:type><live:typelabel>Blog entry</live:typelabel><wfw:commentRss>http://eddyzhoufeng.spaces.live.com/blog/cns!DD28D4EF61AE1D45!770/comments/feed.rss</wfw:commentRss><wfw:comment>http://eddyzhoufeng.spaces.live.com/Blog/cns!DD28D4EF61AE1D45!770.entry#comment</wfw:comment><dcterms:modified>2007-10-18T16:41:01Z</dcterms:modified></item><item><title>搜索引擎的基础知识</title><link>http://eddyzhoufeng.spaces.live.com/Blog/cns!DD28D4EF61AE1D45!766.entry</link><description>&lt;div&gt;最近在看lucene,现在写一下搜索引擎的实现原理，可以看作四步：从互联网上抓取网页→建立索引数据库→在索引数据库中搜索→对搜索结果进行处理和排序。 
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;从互联网上抓取网页&lt;/strong&gt;. 利用能够从互联网上自动收集网页的网络蜘蛛程序，自动访问互联网，并沿着任何网页中的所有URL爬到其它网页，重复这过程，并把爬过的所有网页收集到服务器中。 
&lt;li&gt;&lt;strong&gt;建立索引数据库&lt;/strong&gt; . 由索引系统程序对收集回来的网页进行分析，提取相关网页信息（包括网页所在URL、编码类型、页面内容包含的关键词、关键词位置、生成时间、大小、与其它 网页的链接关系等），根据一定的相关度算法进行大量复杂计算，得到每一个网页针对页面内容中及超链中每一个关键词的相关度（或重要性），然后用这些相关信 息建立网页索引数据库。 
&lt;li&gt;&lt;strong&gt;在索引数据库中搜索&lt;/strong&gt; . 当用户输入关键词搜索后，分解搜索请求，由搜索系统程序从网页索引数据库中找到符合该关键词的所有相关网页。 
&lt;li&gt;&lt;strong&gt;对搜索结果进行处理排序&lt;/strong&gt; . 所有相关网页针对该关键词的相关信息在索引库中都有记录，只需综合相关信息和网页级别形成相关度数值，然后进行排序，相关度越高，排名越靠前。最后由页面生成系统将搜索结果的链接地址和页面内容摘要等内容组织起来返回给用户。 &lt;/ol&gt;&lt;/div&gt;&lt;img src="http://c.services.spaces.live.com/CollectionWebService/c.gif?cid=-2510522667657978555&amp;page=RSS%3a+%e6%90%9c%e7%b4%a2%e5%bc%95%e6%93%8e%e7%9a%84%e5%9f%ba%e7%a1%80%e7%9f%a5%e8%af%86&amp;referrer=" width="1px" height="1px" border="0" alt=""&gt;&lt;img style="position:absolute" alt="" width="0px" height="0px" src="http://c.live.com/c.gif?NC=31263&amp;amp;NA=1149&amp;amp;PI=73329&amp;amp;RF=&amp;amp;DI=3919&amp;amp;PS=85545&amp;amp;TP=eddyzhoufeng.spaces.live.com&amp;amp;GT1=eddyzhoufeng"&gt;</description><comments>http://eddyzhoufeng.spaces.live.com/Blog/cns!DD28D4EF61AE1D45!766.entry#comment</comments><guid isPermaLink="true">http://eddyzhoufeng.spaces.live.com/Blog/cns!DD28D4EF61AE1D45!766.entry</guid><pubDate>Tue, 16 Oct 2007 12:38:55 GMT</pubDate><slash:comments>1</slash:comments><msn:type>blogentry</msn:type><live:type>blogentry</live:type><live:typelabel>Blog entry</live:typelabel><wfw:commentRss>http://eddyzhoufeng.spaces.live.com/blog/cns!DD28D4EF61AE1D45!766/comments/feed.rss</wfw:commentRss><wfw:comment>http://eddyzhoufeng.spaces.live.com/Blog/cns!DD28D4EF61AE1D45!766.entry#comment</wfw:comment><dcterms:modified>2007-10-19T05:09:08Z</dcterms:modified></item></channel></rss>