umbot - v2.0.8
    Preparing search index...

    Class Text

    Класс для работы с текстом и текстовыми операциями

    Класс предоставляет статические методы для:

    • Обрезки текста
    • Проверки URL
    • Определения согласия/отрицания
    • Поиска совпадений
    • Работы с окончаниями слов
    • Проверки схожести текстов
    // Обрезка текста
    Text.resize('Длинный текст', 5); // -> 'Длин...'

    // Проверка URL
    Text.isUrl('https://example.com'); // -> true

    // Определение согласия
    Text.isSayTrue('да, согласен'); // -> true

    // Поиск совпадений
    Text.isSayText(['привет', 'здравствуйте'], 'привет мир'); // -> true

    // Работа с окончаниями
    Text.getEnding(5, ['яблоко', 'яблока', 'яблок']); // -> 'яблок'

    // Проверка схожести
    Text.textSimilarity('привет', 'привт', 80); // -> { status: true, percent: 90, ... }
    Index

    Constructors

    Methods

    • Обрезает текст до указанной длины

      Parameters

      • text: null | string

        Исходный текст

      • Optionalsize: number = 950

        Максимальная длина результата

      • OptionalisEllipsis: boolean = true

        Добавлять ли многоточие в конце

      Returns string

      Обрезанный текст

      Text.resize('Длинный текст', 5); // -> 'Длин...'
      Text.resize('Длинный текст', 5, false); // -> 'Длинн'
    • Проверяет, является ли строка URL-адресом

      Parameters

      • link: string

        Проверяемая строка

      Returns boolean

      true, если строка является URL-адресом

      Text.isUrl('https://example.com'); // -> true
      Text.isUrl('не url'); // -> false
    • Определяет наличие в тексте согласия пользователя

      Parameters

      • text: string

        Проверяемый текст

      Returns boolean

      true, если найдено подтверждение

      Распознает следующие паттерны:

      • "да"
      • "конечно"
      • "согласен"/"согласна"
      • "подтверждаю"/"подтверждаю"
      Text.isSayTrue('да, согласен'); // -> true
      Text.isSayTrue('нет, не согласен'); // -> false
    • Определяет наличие в тексте отрицания пользователя

      Parameters

      • text: string

        Проверяемый текст

      Returns boolean

      true, если найдено отрицание

      Распознает следующие паттерны:

      • "нет"
      • "неа"
      • "не"
      Text.isSayFalse('нет, не хочу'); // -> true
      Text.isSayFalse('да, хочу'); // -> false
    • Проверяет наличие совпадений в тексте

      Parameters

      • find: TPattern

        Искомый текст или массив текстов

      • text: string

        Исходный текст для поиска

      • OptionalisPattern: boolean = false

        Использовать ли регулярные выражения

      Returns boolean

      true, если найдено совпадение

      // Поиск подстроки
      Text.isSayText('привет', 'привет мир'); // -> true

      // Поиск одной из подстрок
      Text.isSayText(['привет', 'здравствуйте'], 'привет мир'); // -> true

      // Поиск по регулярному выражению
      Text.isSayText(['\\bпривет\\b', '\\bмир\\b'], 'привет мир', true); // -> true
    • Возвращает случайную строку из массива или исходную строку

      Parameters

      • str: TPattern

        Строка или массив строк

      Returns string

      Выбранная строка

      Text.getText('привет'); // -> 'привет'
      Text.getText(['привет', 'здравствуйте']); // -> случайная строка из массива
    • Возвращает правильное окончание слова в зависимости от числа

      Parameters

      • num: number

        Число для определения окончания

      • titles: readonly string[]

        Варианты окончаний ['один', 'два-четыре', 'пять-десять']

      • Optionalindex: null | number = null

        Принудительный индекс варианта окончания

      Returns null | string

      Выбранное окончание или null, если не найдено

      const titles = ['яблоко', 'яблока', 'яблок'];
      Text.getEnding(1, titles); // -> 'яблоко'
      Text.getEnding(2, titles); // -> 'яблока'
      Text.getEnding(5, titles); // -> 'яблок'

      // Принудительный выбор формы
      Text.getEnding(5, titles, 0); // -> 'яблоко'
    • Проверяет схожесть текстов и возвращает результат сравнения

      Parameters

      • origText: string

        Оригинальный текст для сравнения

      • compareText: TPattern

        Текст или массив текстов для сравнения

      • Optionalthreshold: number = 80

        Минимальный процент схожести для положительного результата

      Returns ITextSimilarity

      Результат сравнения текстов

      // Сравнение с одним текстом
      Text.textSimilarity('привет', 'привт', 80);
      // -> {
      // status: true,
      // index: 0,
      // percent: 90,
      // text: 'привт'
      // }

      // Сравнение с массивом текстов
      Text.textSimilarity('привет', ['привт', 'здравствуйте'], 80);
      // -> {
      // status: true,
      // index: 0,
      // percent: 90,
      // text: 'привт'
      // }