public static String toString(WordList wordList) { StringBuilder sb = new StringBuilder(); for (int i = 0; i < wordList.size(); i++) { if (sb.length() > 0) { sb.append(" "); } sb.append(wordList.getWord(i)); } return sb.toString(); }
private synchronized void addPhrase(Map<String,Object> tree, Phrase phrase, int wordIndex) { String word = (phrase.wordList.size() <= wordIndex)? PHRASE_END:phrase.wordList.getWord(wordIndex); Object node = tree.get(word); if (node == null) { tree.put(word, phrase); } else if (node instanceof Phrase) { // create list with this phrase and other and put it here List list = new ArrayList(2); list.add(phrase); list.add(node); tree.put(word, list); } else if (node instanceof Map) { addPhrase((Map<String,Object>) node, phrase, wordIndex+1); } else if (node instanceof List) { ((List) node).add(phrase); } else { throw new RuntimeException("Unexpected class " + node.getClass() + " while adding word " + wordIndex + "(" + word + ") in phrase " + phrase.getText()); } }
String word = tokens.getWord(i); Object node = tree.get(word); if (node == null) {
Map<String,Object> tree = rootTree; for (int i = 0; i < wordList.size(); i++) { String word = wordList.getWord(i); Object node = tree.get(word); if (node == null) {
int j = 0, last = 0; for (int i = tokenStart; i < tokenEnd; i++) { String word = tokens.getWord(i); word = getNormalizedForm(word); if (word.length() != 0) {
int j = 0, last = 0; for (int i = tokenStart; i < tokenEnd; i++) { String word = tokens.getWord(i); word = getNormalizedForm(word); if (word.length() != 0) {
int j = 0, last = 0; for (int i = tokenStart; i < tokenEnd; i++) { String word = tokens.getWord(i); word = getNormalizedForm(word); if (word.length() != 0) {
protected int checkWordListMatch(Phrase phrase, WordList tokens, int tokenStart, int tokenEnd, int checkStart, boolean matchEnd) { if (checkStart < tokenStart) return -1; int i; int phraseSize = phrase.wordList.size(); for (i = checkStart; i < tokenEnd && i - tokenStart < phraseSize; i++) { String word = tokens.getWord(i); String phraseWord = phrase.wordList.getWord(i - tokenStart); if (!phraseWord.equals(word)) { return -1; } } if (i - tokenStart == phraseSize) { // All tokens in phrase has been matched! if (matchEnd) { return (i == tokenEnd)? i:-1; } else { return i; } } else { return -1; } }
protected int checkWordListMatch(Phrase phrase, WordList tokens, int tokenStart, int tokenEnd, int checkStart, boolean matchEnd) { if (checkStart < tokenStart) return -1; int i; int phraseSize = phrase.wordList.size(); for (i = checkStart; i < tokenEnd && i - tokenStart < phraseSize; i++) { String word = tokens.getWord(i); String phraseWord = phrase.wordList.getWord(i - tokenStart); if (!phraseWord.equals(word)) { return -1; } } if (i - tokenStart == phraseSize) { // All tokens in phrase has been matched! if (matchEnd) { return (i == tokenEnd)? i:-1; } else { return i; } } else { return -1; } }
protected int checkWordListMatch(Phrase phrase, WordList tokens, int tokenStart, int tokenEnd, int checkStart, boolean matchEnd) { if (checkStart < tokenStart) return -1; int i; int phraseSize = phrase.wordList.size(); for (i = checkStart; i < tokenEnd && i - tokenStart < phraseSize; i++) { String word = tokens.getWord(i); String phraseWord = phrase.wordList.getWord(i - tokenStart); if (!phraseWord.equals(word)) { return -1; } } if (i - tokenStart == phraseSize) { // All tokens in phrase has been matched! if (matchEnd) { return (i == tokenEnd)? i:-1; } else { return i; } } else { return -1; } }
private synchronized void addPhrase(Map<String,Object> tree, Phrase phrase, int wordIndex) { String word = (phrase.wordList.size() <= wordIndex)? PHRASE_END:phrase.wordList.getWord(wordIndex); Object node = tree.get(word); if (node == null) { tree.put(word, phrase); } else if (node instanceof Phrase) { // create list with this phrase and other and put it here List list = new ArrayList(2); list.add(phrase); list.add(node); tree.put(word, list); } else if (node instanceof Map) { addPhrase((Map<String,Object>) node, phrase, wordIndex+1); } else if (node instanceof List) { ((List) node).add(phrase); } else { throw new RuntimeException("Unexpected class " + node.getClass() + " while adding word " + wordIndex + "(" + word + ") in phrase " + phrase.getText()); } }
private synchronized void addPhrase(Map<String,Object> tree, Phrase phrase, int wordIndex) { String word = (phrase.wordList.size() <= wordIndex)? PHRASE_END:phrase.wordList.getWord(wordIndex); Object node = tree.get(word); if (node == null) { tree.put(word, phrase); } else if (node instanceof Phrase) { // create list with this phrase and other and put it here List list = new ArrayList(2); list.add(phrase); list.add(node); tree.put(word, list); } else if (node instanceof Map) { addPhrase((Map<String,Object>) node, phrase, wordIndex+1); } else if (node instanceof List) { ((List) node).add(phrase); } else { throw new RuntimeException("Unexpected class " + node.getClass() + " while adding word " + wordIndex + "(" + word + ") in phrase " + phrase.getText()); } }
private synchronized void addPhrase(Map<String,Object> tree, Phrase phrase, int wordIndex) { String word = (phrase.wordList.size() <= wordIndex)? PHRASE_END:phrase.wordList.getWord(wordIndex); Object node = tree.get(word); if (node == null) { tree.put(word, phrase); } else if (node instanceof Phrase) { // create list with this phrase and other and put it here List list = new ArrayList(2); list.add(phrase); list.add(node); tree.put(word, list); } else if (node instanceof Map) { addPhrase((Map<String,Object>) node, phrase, wordIndex+1); } else if (node instanceof List) { ((List) node).add(phrase); } else { throw new RuntimeException("Unexpected class " + node.getClass() + " while adding word " + wordIndex + "(" + word + ") in phrase " + phrase.getText()); } }
public static String toString(WordList wordList) { StringBuilder sb = new StringBuilder(); for (int i = 0; i < wordList.size(); i++) { if (sb.length() > 0) { sb.append(" "); } sb.append(wordList.getWord(i)); } return sb.toString(); }
public static String toString(WordList wordList) { StringBuilder sb = new StringBuilder(); for (int i = 0; i < wordList.size(); i++) { if (sb.length() > 0) { sb.append(" "); } sb.append(wordList.getWord(i)); } return sb.toString(); }
public static String toString(WordList wordList) { StringBuilder sb = new StringBuilder(); for (int i = 0; i < wordList.size(); i++) { if (sb.length() > 0) { sb.append(" "); } sb.append(wordList.getWord(i)); } return sb.toString(); }
boolean oldPhraseNewFormAdded = false; // True if the phrase already exists, and this was new form added to old phrase for (int i = wordIndex; i < wordList.size(); i++) { String word = Interner.globalIntern(wordList.getWord(i)); Object node = tree.get(word); if (node == null) {
Map<String,Object> tree = rootTree; for (int i = 0; i < wordList.size(); i++) { String word = wordList.getWord(i); Object node = tree.get(word); if (node == null) {
int j = 0, last = 0; for (int i = tokenStart; i < tokenEnd; i++) { String word = tokens.getWord(i); word = getNormalizedForm(word); if (word.length() != 0) {
protected int checkWordListMatch(Phrase phrase, WordList tokens, int tokenStart, int tokenEnd, int checkStart, boolean matchEnd) { if (checkStart < tokenStart) return -1; int i; int phraseSize = phrase.wordList.size(); for (i = checkStart; i < tokenEnd && i - tokenStart < phraseSize; i++) { String word = tokens.getWord(i); String phraseWord = phrase.wordList.getWord(i - tokenStart); if (!phraseWord.equals(word)) { return -1; } } if (i - tokenStart == phraseSize) { // All tokens in phrase has been matched! if (matchEnd) { return (i == tokenEnd)? i:-1; } else { return i; } } else { return -1; } }