Skip to content

Commit

Permalink
Merge pull request #45 from MighTguY/feature/ExclusionRegexAddition
Browse files Browse the repository at this point in the history
add for synonymnn exclusion
  • Loading branch information
MighTguY authored Mar 4, 2020
2 parents 82fd168 + 0e92d65 commit a00e309
Show file tree
Hide file tree
Showing 2 changed files with 10 additions and 8 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -106,8 +106,8 @@ public double getDistance(String w1, String w2, double maxEditDistance) {
private boolean isTransposition(int i, int j, String a, String b) {
return i > 2
&& j > 2
&& a.charAt(i - 2) == b.charAt(i - 1)
&& b.charAt(j - 2) == a.charAt(j - 1);
&& a.charAt(i - 2) == a.charAt(i - 1)
&& b.charAt(j - 2) == b.charAt(j - 1);
}

private double getReplaceCost(char aI, char bJ, boolean useCharDistance) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,6 @@
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
Expand Down Expand Up @@ -203,7 +202,10 @@ private void addSpellChecker(SolrCore core, NamedList spellcheckerNL) {
String bigramsFile = SearchRequestUtil.getFromNamedList(spellcheckerNL, "bigrams_file", null);
String exclusionsFile = SearchRequestUtil
.getFromNamedList(spellcheckerNL, "exclusions_file", null);
loadDefault(unigramsFile, bigramsFile, exclusionsFile, spellChecker, core);
String exclustionnFileSeperator = SearchRequestUtil
.getFromNamedList(spellcheckerNL, "exclusions_file_sp", "\\s+");
loadDefault(unigramsFile, bigramsFile, exclusionsFile, spellChecker, core,
exclustionnFileSeperator);
boolean buildOnCommit = Boolean.parseBoolean((String) spellcheckerNL.get("buildOnCommit"));
boolean buildOnOptimize = Boolean.parseBoolean((String) spellcheckerNL.get("buildOnOptimize"));
if (buildOnCommit || buildOnOptimize) {
Expand All @@ -216,7 +218,7 @@ private void addSpellChecker(SolrCore core, NamedList spellcheckerNL) {

private void loadDefault(String unigramsFile, String bigramsFile, String exclusionsFile,
SpellChecker spellChecker,
SolrCore core) {
SolrCore core, String exclusionListSperatorRegex) {
try {
if (!StringUtils.isEmpty(unigramsFile)) {
loadUniGramFile(core.getResourceLoader().openResource(unigramsFile),
Expand All @@ -230,7 +232,7 @@ private void loadDefault(String unigramsFile, String bigramsFile, String exclusi

if (!StringUtils.isEmpty(exclusionsFile)) {
loadExclusions(core.getResourceLoader().openResource(exclusionsFile),
spellChecker.getDataHolder());
spellChecker.getDataHolder(), exclusionListSperatorRegex);
}

} catch (SpellCheckException | IOException ex) {
Expand Down Expand Up @@ -263,13 +265,13 @@ private void loadBiGramFile(InputStream inputStream, DataHolder dataHolder)
}
}

private void loadExclusions(InputStream inputStream, DataHolder dataHolder)
private void loadExclusions(InputStream inputStream, DataHolder dataHolder, String seperatorRegex)
throws IOException, SpellCheckException {
try (BufferedReader br = new BufferedReader(
new InputStreamReader(inputStream))) {
String line;
while ((line = br.readLine()) != null) {
String[] arr = line.split("\\s+");
String[] arr = line.split(seperatorRegex);
if (arr.length == 2) {
dataHolder.addExclusionItem(arr[0], arr[1]);
}
Expand Down

0 comments on commit a00e309

Please sign in to comment.