Skip to content

Latest commit

 

History

History
41 lines (35 loc) · 1.41 KB

File metadata and controls

41 lines (35 loc) · 1.41 KB

Стандартний алгоритм токенізації

  1. Розбивка тексту на абзаци по символу Newline

  2. Розбивка тексту на речення за настуним алгоритмом

    • Розбивка на токени по регекспу [^\s]+
    • Якщо токен закінчується на один з розділових знаків .!?…» (за виключенням випадків, коли цей токен починається з відкриваючої дужки або входить в перелік загальновживаних абревіатур з крапкою - див. нижче), а наступний токен починається з великої літери, то це границя речення.
  3. Розбивка речень на токени по наступному регулярному виразу:

     \w+://(?:[a-zA-Z]|[0-9]|[$-_@.&+])+
     |[a-zA-Z0-9_.+-]+@[a-zA-Z0-9-]+.[a-zA-Z0-9-.]+
     |[0-9]+-[а-яА-ЯіїІЇ'’`]+
     |[+-]?[0-9](?:[0-9,.-]*[0-9])?
     |[\w](?:[\w'’`-]?[\w]+)*
     |\w.(?:\w.)+\w?
     |["#$%&*+,/:;<=>@^`~…\\(\\)⟨⟩{}\\[\\|\\]‒–—―«»“”‘’'№]
     |[.!?]+
     |-+
    

Абревіатури з крапкою

ім.
о.
вул.
просп.
бул.
пров.
пл.
г.
р.
див.
п.
с.
м.