Class KeywordsParser

java.lang.Object
xyz.cofe.text.lex.KeywordsParser
All Implemented Interfaces:
TokenParser

public class KeywordsParser
extends java.lang.Object
implements TokenParser
Парсер ключевых слов. Ключевые слова анализируются в порядке убывания длины ключевого слова - т.е. сначала самые длинные ключевые слова, затем более короткие
Author:
gocha
  • Field Summary

    Fields 
    Modifier and Type Field Description
    protected java.lang.String id  
    protected java.util.function.Function<java.lang.String,​java.lang.String> matchedTextConvertor
    Функц. конвертирования совпавших слов
  • Constructor Summary

    Constructors 
    Constructor Description
    KeywordsParser()
    Конструктор
    KeywordsParser​(boolean ignoreCase, java.lang.String... keywords)
    Конструктор
    KeywordsParser​(java.lang.String id)
    Конструктор
    KeywordsParser​(java.lang.String[] keywords, boolean ignoreCase, java.util.function.Function<java.lang.String,​java.lang.String> matchedTextConvertor)
    Конструктор
    KeywordsParser​(Keywords keywords)
    Конструктор
  • Method Summary

    Modifier and Type Method Description
    Keywords getKeywords()
    Указывает список ключевых слов
    java.util.function.Function<java.lang.String,​java.lang.String> getMatchedTextConvertor()
    Указывает функц. конвертирования совпавших слов, возможно null
    Keyword parse​(java.lang.String source, int offset)
    Возвращает токен если ему соответ цепочка сиволов в указаной точке
    void setKeywords​(Keywords keywords)
    Указывает список ключевых слов
    void setMatchedTextConvertor​(java.util.function.Function<java.lang.String,​java.lang.String> matchedTextConvertor)
    Указывает функц. конвертирования совпавших слов, возможно null

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Field Details

    • id

      protected java.lang.String id
    • matchedTextConvertor

      protected java.util.function.Function<java.lang.String,​java.lang.String> matchedTextConvertor
      Функц. конвертирования совпавших слов
  • Constructor Details

    • KeywordsParser

      public KeywordsParser()
      Конструктор
    • KeywordsParser

      public KeywordsParser​(java.lang.String id)
      Конструктор
      Parameters:
      id - Идентификатор токена
    • KeywordsParser

      public KeywordsParser​(boolean ignoreCase, java.lang.String... keywords)
      Конструктор
      Parameters:
      ignoreCase - Игнорировать регистр букв
      keywords - список ключевых слов
    • KeywordsParser

      public KeywordsParser​(java.lang.String[] keywords, boolean ignoreCase, java.util.function.Function<java.lang.String,​java.lang.String> matchedTextConvertor)
      Конструктор
      Parameters:
      keywords - список ключевых слов
      ignoreCase - Игнорировать регистр букв
      matchedTextConvertor - Функц. конвертирования совпавших слов, возможно null
    • KeywordsParser

      public KeywordsParser​(Keywords keywords)
      Конструктор
      Parameters:
      keywords - список ключевых слов
  • Method Details

    • getKeywords

      public Keywords getKeywords()
      Указывает список ключевых слов
      Returns:
      список ключевых слов
    • setKeywords

      public void setKeywords​(Keywords keywords)
      Указывает список ключевых слов
      Parameters:
      keywords - список ключевых слов
    • getMatchedTextConvertor

      public java.util.function.Function<java.lang.String,​java.lang.String> getMatchedTextConvertor()
      Указывает функц. конвертирования совпавших слов, возможно null
      Returns:
      Функц. конвертирования совпавших слов, возможно null
    • setMatchedTextConvertor

      public void setMatchedTextConvertor​(java.util.function.Function<java.lang.String,​java.lang.String> matchedTextConvertor)
      Указывает функц. конвертирования совпавших слов, возможно null
      Parameters:
      matchedTextConvertor - Функц. конвертирования совпавших слов, возможно null
    • parse

      public Keyword parse​(java.lang.String source, int offset)
      Description copied from interface: TokenParser
      Возвращает токен если ему соответ цепочка сиволов в указаной точке
      Specified by:
      parse in interface TokenParser
      Parameters:
      source - Цепочка символов
      offset - Смещение от начала цепочки символов
      Returns:
      Токен или null, если нет совпадения