Представление результата поиска

Как представить результат поиска: состояние найден или не найден, объект результата и единицы измерения позиции совпадения в исходных данных.

Состояние найден или не найден

Результат поиска удобно разделять на два состояния: совпадение обнаружено или совпадение отсутствует. Первое состояние несёт позицию или набор позиций, второе не содержит числовых данных. Такое разделение позволяет вызывающему коду проверить наличие результата до обращения к его содержимому и избежать обращения к неопределённым значениям.

Позиция совпадения и её единицы

Позиция совпадения указывает, где в исходных данных найдено совпадение. Единицы зависят от типа данных: для строки это индекс символа, для массива чисел — индекс элемента, для файла — смещение в байтах. При работе с несколькими совпадениями результат становится коллекцией таких позиций, упорядоченной по возрастанию. Источник данных и единицы измерения всегда следует уточнять в описании конкретной операции.