Текстовый поиск в 1С — не просто функция, а реальный способ ускорить и упростить ежедневную работу. Если нужно быстро найти товар в базе по части названия или отыскать документ по номеру, оператор «ПОДОБНО» незаменим. Он даёт возможность обрабатывать самые разные данные: от фамилий до адресов и кодов, выбирая даже схожие или неполные совпадения.
Основные причины, по которым разработчики так часто с ним сталкиваются
«Оператор ПОДОБНО в запросе 1С 8.3» часто фигурирует в таких задачах:
- Поиск наименований номенклатуры (частичное совпадение: «РЕЗЕЦ», «ТРАНЗИСТ», «ЭЛЕКТРО»).
- Сверка номеров документов (находится любая часть номера, особенно при работе с длинными кодами).
- Проверка адресной информации (улица, город, регион), когда точное совпадение не требуется.

В этой статье разберём синтаксис «ПОДОБНО» и пройдёмся по полезным спецсимволам. Покажем на конкретных примерах, когда «ПОДОБНО» выручает, а когда лучше взять другие механизмы.
Что такое оператор «ПОДОБНО» и зачем он нужен
-
Краткое объяснение сути оператора: проверка строки на совпадение с шаблоном
«ПОДОБНО» позволяет сравнить строку с заранее заданным шаблоном. Если строка этому шаблону соответствует, результат проверки — Истина, иначе Ложь. Таким образом, оператор отвечает на вопрос: «Подходит ли значение под конкретный текстовый формат?»
-
Места, где оператор чаще всего встречается
- В условии ГДЕ. Часто используется, чтобы отобрать записи по частичному совпадению в поле Наименование, Описание, Адрес и др.
- В конструкции Выбор Когда Тогда Иначе Конец. Если нужно обработать разные форматы строки, «ПОДОБНО» помогает «распознать» нужное соответствие.
- В полях выборки (как результат сравнения). К примеру, выводим результат проверки во временной таблице или используем его для группировок и аналитики.
-
Как интерпретировать результат проверки (Истина/Ложь)
Если оператор обнаружил соответствие строки шаблону, возвращается Истина; если нет — Ложь. Это удобно для фильтрации результатов запроса. Например, в секции ГДЕ мы оставляем только те строки, у которых «ПОДОБНО» вернуло Истина.
Синтаксис и базовые шаблоны
-
Трёхзвенная конструкция: левая часть (строка), оператор «ПОДОБНО», шаблон
Типовая запись выглядит так:
Номенклатура. Наименование ПОДОБНО "%РЕЗЕЦ%"
Левая часть — поле или переменная, «ПОДОБНО» — сам оператор, а справа — шаблон, в котором могут использоваться спецсимволы.
-
Частые спецсимволы и их назначение
- % — поиск подстроки любой длины. Например, "%РЕЗЕЦ%" найдёт все слова, где встречается «РЕЗЕЦ» в любом месте.
- _ — поиск ровно одного символа. Допустим, "_ЕЗЕЦ" будет искать любую строку, где первая буква может быть любой, а дальше «ЕЗЕЦ».
- […] — выборка из набора символов или диапазона. Например, [А-Я] означает любую букву от А до Я.
- [^…] — исключение из набора символов или диапазона. Если указать [^\d], это будет искать любой символ, кроме цифры.
Как и в каких случаях эти шаблоны упрощают жизнь разработчику
- Шаблон "%ЭЛЕКТРО%" быстро вытаскивает все наименования, где встречается слово «ЭЛЕКТРО».
- Шаблон с нижним подчёркиванием _ позволяет не думать о том, какая именно буква стоит в конкретной позиции — часто полезно при поиске номенклатуры по кодам.
- Диапазоны в квадратных скобках выручают в случаях, когда надо проверить, что символ принадлежит определённому набору. Например, мы ищем только латинские буквы в начале строки.
Визуальная демонстрация примеров
-
Пример простого поиска: «%РЕЗЕЦ%» и как он выбирает все номенклатуры, где встречается слово «РЕЗЕЦ»
Допустим, у нас есть несколько позиций: «РЕЗЕЦ токарный», «Резец сплавной», «Держатель резца». Оператор вернёт все эти варианты, ведь «РЕЗЕЦ» (или «Резец») встречается в строках в любом регистре.
-
Сравнение результатов при различных шаблонах: «%РЕЗЕЦ», «РЕЗЕЦ%», без символов %
- «%РЕЗЕЦ» найдёт строки, где «РЕЗЕЦ» стоит в конце текста, например «Инструмент РЕЗЕЦ».
- «РЕЗЕЦ%» подберёт строки, начинающиеся с «РЕЗЕЦ», вроде «РЕЗЕЦ скоростной».
- Без символов % («РЕЗЕЦ») оператор будет искать точное совпадение — только ту строку, где есть «РЕЗЕЦ» без добавления других слов.
-
На какие детали нужно обратить внимание, чтобы оператор работал корректно
- Регистрозависимость. По умолчанию сравнение в 1С нечувствительно к регистру, но важно проверить конфигурацию.
- Символы % в начале и конце шаблона бывают критичны для результатов. Пропустите их — и вы не найдёте нужные вариации строки.
Работа со спецсимволами
Как искать символ «%» или другой зарезервированный знак: использование оператора СПЕЦСИМВОЛ
Если нужно найти позицию, где в тексте содержится сам знак «%», нельзя просто подставить его в шаблон — он будет восприниматься как спецсимвол. Для этого используют ключевое слово СПЕЦСИМВОЛ.
Частые сценарии, в которых без спецсимвола не обойтись
- Поиск позиций с процентами, решётками, амперсандами и другими нестандартными символами.
- Проверка форматов, где существуют зарезервированные символы (например, шаблон, включающий «%» в самом названии).
Пример запроса с
Номенклатура.Наименование ПОДОБНО "%#%" СПЕЦСИМВОЛ "#"Вместо "#" мы можем подставлять любой зарезервированный символ, который нужно исключить из интерпретации. К примеру:
ГДЕ
Номенклатура.Наименование ПОДОБНО "%#%" СПЕЦСИМВОЛ "#"Здесь мы фактически ищем сам символ «#» внутри наименования.
Параметры и строковые переменные в операторе «ПОДОБНО»
-
Почему важно приводить тип переменной к строковому формату (если это не строка)
Если передать в шаблон что-то вроде числа или даты напрямую, возникнут ошибки или некорректные результаты сравнения. Поэтому при формировании запроса важно явно приводить переменные к строке — так «ПОДОБНО» сможет их корректно обработать.
-
Сложение строк для передачи параметров в запрос:
Обычно в тексте запроса это выглядит так:
ГДЕ
Номенклатура.Наименование ПОДОБНО ("%"+ &Поиск + "%")Где Поиск — параметр, переданный из модуля, который содержит часть строки. С помощью конкатенации добавляем символы % слева и справа.
Подводные камни при передаче параметра в шаблон и как их избежать
-
Следите за экранированием: если параметр может содержать «%» или «_», нужно либо предупреждать пользователя, либо использовать СПЕЦСИМВОЛ.
-
Проверьте, чтобы параметр не оказался NULL или нестрокового формата. В противном случае логика «ПОДОБНО» не отработает.
Дополнительные нюансы и лайфхаки
Как оптимизировать текстовый поиск: когда использовать «ПОДОБНО», а когда — другие механизмы
- Для быстрого отбора записей, где ключевое слово точно известно, «ПОДОБНО» — отличный выбор.
- Если нужно искать по множеству полей сразу или выдвигаются требования к морфологическому поиску, стоит подумать о полнотекстовом поиске или других средствах 1С.
Подводные камни, которые встречаются у начинающих разработчиков
- Забывают поставить «%», и в итоге находят только точные совпадения вместо частичных.
- Неправильно экранируют спецсимволы, в результате чего запрос либо не работает, либо даёт неверный результат.
Рекомендации по составлению проверочных шаблонов, чтобы избежать ложных срабатываний
- Чётко определите, какой формат строки вы ищете (где может быть пробел, цифра или буква).
- При необходимости используйте диапазоны [A-Z], [А-Я], [0-9], чтобы уточнить условия поиска.
- Тестируйте шаблоны на разных данных, особенно если не уверены, что все варианты символов учтены.
Практические советы для реальной разработки
-
Типичные задачи, которые быстрее решаются «ПОДОБНО», чем другими способами
- Сопоставление частей наименования номенклатуры, когда пользователь вводит произвольные фрагменты.
- Поиск по справочникам (Контрагенты, Сотрудники), когда нужна фильтрация по частичным совпадениям ФИО или адреса.
-
Как ещё можно использовать операторы диапазонов […] и [^…] в запросах к базам с разными форматами данных
Операторы диапазонов часто помогают при проверке правильности ввода телефонных номеров, адресов электронной почты или артикулов, где могут встречаться буквы, цифры и специальные символы. Например, шаблон [A-Za-z0-9._%+-] может исключить всё, что не подходит под формат e-mail.
Когда «ПОДОБНО» уже не спасёт: случаи, где лучше обратиться к полнотекстовому поиску или альтернативным методам
- Когда нужно искать с учётом морфологии: формы слов «продавать», «продажа», «продавец».
- Если поле содержит слишком много текста (комментарии, описания), и требуются сложные условия отбора.
- Когда нужна быстрая индексация больших массивов текстовых полей — «ПОДОБНО» может оказаться медленным без правильных индексов.
Оператор «ПОДОБНО» даёт гибкие возможности для текстового поиска в 1С 8.3. Мы рассмотрели его синтаксис, спецсимволы, параметры, особенности использования в разных ситуациях. Освоение «ПОДОБНО» позволит быстрее собирать и фильтровать нужную информацию в базе.
Пусть «ПОДОБНО» станет вашим другом в ежедневной работе с 1С: от типовых отборов до нестандартных задач. Экспериментируйте, ищите новые возможности и не бойтесь сочетать «ПОДОБНО» с другими инструментами.