Лого на страниците (малко).

Заглавна страница > Четива > Четива за глотометрията > cream в режим „expert“ > Разбиване на текста на елементи (англ. tokenization) > в) Списък от думи (лекси)

 

Александър Иванов

cream в режим „expert“

в) Списък от думи (лекси)

Пак няма да обсъждаме какво е дума. Ще приемем, че шпацията или началото/краят на реда дели текста на думи. Очевидно трябва просто да заменим всички шпации с управляващия символ за нов ред:

:%s: :\r:g

Това е всичко — текстът ви е преписан като списък от лекси и единствените редове, които не са празни и в които няма букви, съдържат тирета. Големите тирета! Не дефиси.

При тиретата има два случая.

Първо, тирето въвежда пряка реч. Значи то е било в началото на абзаца, а сега е непосредствено след празен ред. Аз обикновено свързвам такова тире със следходната дума, тоест поставям го пред следходната дума, разделено с шпация:

:%s:\n\n-\n:\r\r- :

В израза за заместване след тирето има шпация.

Второ, тирето е било вътре в абзаца, значи сега пред него няма празен ред, а дума. В този случай е разумно тирето да се препише след предходната дума, пак разделено от нея с шпация:

:%s:^\(.\+\)\n-:\1 -:

Сега може да отстраните и празните редове — те си свършиха вече работата.

Коментар: Това „списъчно“ представяне на текста е основна форма, изходен материал за повечето глотометрични изследвания. От една страна, контекстът е напълно запазен, а от друга страна, имате възможност да отбелязвате каквато си поискате глотометрична характеристика. Освен това „списъчното“ представяне на текста е суровият материал за всякакви речници — фреквентни, рангови, пък ако щете и за тълковни и многоезични.

Затова аз съм направил програмката gtext2list.py в glotta — тя има и някои допълнителни възможности.

Страница: А. И.
Електронна поща
Дата на публикуване: 15.V.2014
Последна редакция: 27.IV.2023
Съобразено с
html5/css3