23 using System.Collections.Generic;
26 using System.Collections;
28 using Lucene.Net.Analysis;
29 using Lucene.Net.Analysis.De;
30 using Lucene.Net.Analysis.Standard;
33 namespace Lucene.Net.Analysis.Fr
64 public readonly
static String[] FRENCH_STOP_WORDS = {
65 "a",
"afin",
"ai",
"ainsi",
"après",
"attendu",
"au",
"aujourd",
"auquel",
"aussi",
66 "autre",
"autres",
"aux",
"auxquelles",
"auxquels",
"avait",
"avant",
"avec",
"avoir",
67 "c",
"car",
"ce",
"ceci",
"cela",
"celle",
"celles",
"celui",
"cependant",
"certain",
68 "certaine",
"certaines",
"certains",
"ces",
"cet",
"cette",
"ceux",
"chez",
"ci",
69 "combien",
"comme",
"comment",
"concernant",
"contre",
"d",
"dans",
"de",
"debout",
70 "dedans",
"dehors",
"delà",
"depuis",
"derrière",
"des",
"désormais",
"desquelles",
71 "desquels",
"dessous",
"dessus",
"devant",
"devers",
"devra",
"divers",
"diverse",
72 "diverses",
"doit",
"donc",
"dont",
"du",
"duquel",
"durant",
"dès",
"elle",
"elles",
73 "en",
"entre",
"environ",
"est",
"et",
"etc",
"etre",
"eu",
"eux",
"excepté",
"hormis",
74 "hors",
"hélas",
"hui",
"il",
"ils",
"j",
"je",
"jusqu",
"jusque",
"l",
"la",
"laquelle",
75 "le",
"lequel",
"les",
"lesquelles",
"lesquels",
"leur",
"leurs",
"lorsque",
"lui",
"là",
76 "ma",
"mais",
"malgré",
"me",
"merci",
"mes",
"mien",
"mienne",
"miennes",
"miens",
"moi",
77 "moins",
"mon",
"moyennant",
"même",
"mêmes",
"n",
"ne",
"ni",
"non",
"nos",
"notre",
78 "nous",
"néanmoins",
"nôtre",
"nôtres",
"on",
"ont",
"ou",
"outre",
"où",
"par",
"parmi",
79 "partant",
"pas",
"passé",
"pendant",
"plein",
"plus",
"plusieurs",
"pour",
"pourquoi",
80 "proche",
"près",
"puisque",
"qu",
"quand",
"que",
"quel",
"quelle",
"quelles",
"quels",
81 "qui",
"quoi",
"quoique",
"revoici",
"revoilà",
"s",
"sa",
"sans",
"sauf",
"se",
"selon",
82 "seront",
"ses",
"si",
"sien",
"sienne",
"siennes",
"siens",
"sinon",
"soi",
"soit",
83 "son",
"sont",
"sous",
"suivant",
"sur",
"ta",
"te",
"tes",
"tien",
"tienne",
"tiennes",
84 "tiens",
"toi",
"ton",
"tous",
"tout",
"toute",
"toutes",
"tu",
"un",
"une",
"va",
"vers",
85 "voici",
"voilà",
"vos",
"votre",
"vous",
"vu",
"vôtre",
"vôtres",
"y",
"à",
"ça",
"ès",
92 private readonly ISet<string> stoptable;
97 private ISet<string> excltable = Support.Compatibility.SetFactory.CreateHashSet<
string>();
99 private readonly
Version matchVersion;
105 public static ISet<string> GetDefaultStopSet()
107 return DefaultSetHolder.DEFAULT_STOP_SET;
110 static class DefaultSetHolder
119 : this(matchVersion, DefaultSetHolder.DEFAULT_STOP_SET)
149 this.matchVersion = matchVersion;
160 : this(matchVersion,
StopFilter.MakeStopSet(stopwords))
179 public void SetStemExclusionTable(params
string[] exclusionlist)
182 PreviousTokenStream = null;
189 public void SetStemExclusionTable(IDictionary<string, string> exclusionlist)
191 excltable = Support.Compatibility.SetFactory.CreateHashSet(exclusionlist.Keys);
192 PreviousTokenStream = null;
200 public void SetStemExclusionTable(FileInfo exclusionlist)
203 PreviousTokenStream = null;
240 public override TokenStream ReusableTokenStream(String fieldName, TextReader reader)
242 SavedStreams streams = (SavedStreams)PreviousTokenStream;
245 streams =
new SavedStreams();
249 streams.result, stoptable);
253 PreviousTokenStream = streams;
257 streams.source.Reset(reader);
259 return streams.result;