Таблица DocumentAPI.TextUnit
В таблице представлены варианты разделения текста на диапазоны. Используется в методах Position:getCurrentRange(), Position:getNextRange() и Position:getPreviousRange().
| Значение | Описание |
|---|---|
DocumentAPI.TextUnit_Character | Разделение по символам |
DocumentAPI.TextUnit_Word | Разделение по словам (символы-разделители считаются отдельными словами) |
DocumentAPI.TextUnit_Sentence | Разделение по предложениям (разделители после предложения считаются его частью) |
DocumentAPI.TextUnit_Paragraph | Разделение по абзацам |
Пример
local secondSentence = document:getRange():getBegin():getNextRange(DocumentAPI.TextUnit_Sentence)
local firstSentenceLastWord = secondSentence:getBegin():getPreviousRange(DocumentAPI.TextUnit_Word)
while firstSentenceLastWord:getContentEnd():compare(firstSentenceLastWord:getBegin()) == 1 do
firstSentenceLastWord = firstSentenceLastWord:getBegin():getPreviousRange(DocumentAPI.TextUnit_Word)
end
local thirdSentenceFirstLetter = secondSentence:getContentEnd():getCurrentRange(DocumentAPI.TextUnit_Character)
print(secondSentence:extractText())
-- Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.
print(firstSentenceLastWord:extractText())
-- aliqua
print(thirdSentenceFirstLetter:extractText())
-- D