Мегадок
Subsystems
Авторская разработка решений для 1С с 2008 года. Об авторе.
8 (995) 091-01-01
В онлайне: с 10:00 до 18:00
Заказать звонок
Skype: shekineugeniy
Мегапрайс
Разработки
  • Мегапрайс PRO
  • Мега: Загрузка в 1С
  • Мега: Номенклатура
  • Мега: Цены
  • Мега: Помощник закупок
  • Мега: Помощник продаж
  • Парсеры прайсов
  • Маркетплейсы
  • Удалить (всякое старье)
Что нового?
Отзывы
Информация
  • Об авторе
    • Об авторе
    • История
    • Лицензии
    • Партнеры
    • Контакты
  • Договор-оферта
  • Есть идея!
  • Техподдержка
  • Вопрос ответ
  • Статьи
  • Для интернет-магазинов
    • Продукты Битрикс
    • Шаблоны для сайта
  • Партнерство
  • Акции
Форум
    Subsystems
    Мегапрайс
    Разработки
    • Мегапрайс PRO
    • Мега: Загрузка в 1С
    • Мега: Номенклатура
    • Мега: Цены
    • Мега: Помощник закупок
    • Мега: Помощник продаж
    • Парсеры прайсов
    • Маркетплейсы
    • Удалить (всякое старье)
    Что нового?
    Отзывы
    Информация
    • Об авторе
      • Об авторе
      • История
      • Лицензии
      • Партнеры
      • Контакты
    • Договор-оферта
    • Есть идея!
    • Техподдержка
    • Вопрос ответ
    • Статьи
    • Для интернет-магазинов
      • Продукты Битрикс
      • Шаблоны для сайта
    • Партнерство
    • Акции
    Форум
      0
      Subsystems
      0
      • Мегапрайс
      • Разработки
        • Назад
        • Разработки
        • Мегапрайс PRO
        • Мега: Загрузка в 1С
        • Мега: Номенклатура
        • Мега: Цены
        • Мега: Помощник закупок
        • Мега: Помощник продаж
        • Парсеры прайсов
        • Маркетплейсы
        • Удалить (всякое старье)
      • Что нового?
      • Отзывы
      • Информация
        • Назад
        • Информация
        • Об авторе
          • Назад
          • Об авторе
          • Об авторе
          • История
          • Лицензии
          • Партнеры
          • Контакты
        • Договор-оферта
        • Есть идея!
        • Техподдержка
        • Вопрос ответ
        • Статьи
        • Для интернет-магазинов
          • Назад
          • Для интернет-магазинов
          • Продукты Битрикс
          • Шаблоны для сайта
        • Партнерство
        • Акции
      • Форум
      • Мой кабинет
      • Корзина0
      • 8 (995) 091-01-01
      Skype: shekineugeniy
      support@subsystems.ru
      • Facebook
      • Вконтакте
      • Telegram
      • YouTube

      Нечеткий поиск: слова, буквы и цифры (артикулы из наименований)

      • Главная
      • Форум
      • Разработки для 1С
      • Создание алгоритмов загрузки
      • Нечеткий поиск: слова, буквы и цифры (артикулы из наименований)
      Аренда 1С (4)
      Поиск  Правила 
      Форум » Разработки для 1С » Создание алгоритмов загрузки
      Страницы: 1
      Нечеткий поиск: слова, буквы и цифры (артикулы из наименований)
       
      Евгений
      Администратор
      Сообщений: 2870 Регистрация: 04.07.2011
      #1
      21.12.2017 14:25:51
      Публикую алгоритм который из длинных наименований номенклатуры может оставить только слова, которые содержат английские буквы и цифры (одновременно)
      При желании можно откорректировать алфавит (строка с русским алфавитом закомментирована)
      Может применяться для поиска артикулов в длинных наименованиях номенклатуры при загрузке в 1С прайсов.


      ПравильныеСимволы = "0123456789";
      //ПравильныеСимволыБуквы = "QWERTYUIOPASDFGHJKLZXCVBNMqwertyuiopasdfghjklzxcvbnmЙЦУКЕНГШЩЗХЪФЫВАПРОЛДЖЭЯЧСМИТЬБЮйцукенгшщзхъфывапролджэячсмитьбю";
      ПравильныеСимволыБуквы = "QWERTYUIOPASDFGHJKLZXCVBNMqwertyuiopasdfghjklzxcvbnm";

      МассивКлючевыхСлов = глРазложитьСтрокуВМассивПодстрок(Значение);
      МассивКлючевыхСлов = ПеревестиВРег(МассивКлючевыхСлов);
      КоличествоСлов = МассивКлючевыхСлов.Количество();

      Значение = "";

      КоличествоКлючевыхСлов = 0;
      Для инд = 0 По КоличествоСлов - 1 Цикл
      КоличествоКлючевыхСлов = КоличествоКлючевыхСлов + 1;

      СтрКлючевоеСлово = СокрЛП(МассивКлючевыхСлов[инд]);

      ЕстьБуква = 0;
      ЕстьЦифра = 0;

      Для Сч = 1 по СтрДлина(СтрКлючевоеСлово) Цикл
      ТекСимв = Сред(СтрКлючевоеСлово, Сч, 1);

      Если ЕстьЦифра = 0 Тогда
      Если Найти(ПравильныеСимволы, ТекСимв) > 0 Тогда
      ЕстьЦифра = 1; Иначе ЕстьЦифра = 0;
      КонецЕсли;
      КонецЕсли;

      Если ЕстьБуква = 0 Тогда
      Если Найти(ПравильныеСимволыБуквы, ТекСимв) > 0 Тогда
      ЕстьБуква = 1; Иначе ЕстьБуква = 0;
      КонецЕсли;
      КонецЕсли;
      КонецЦикла;

      Если ЕстьБуква = 0 ИЛИ ЕстьЦифра = 0 Тогда
      Продолжить;
      КонецЕсли;

      Значение = Значение+" "+СтрКлючевоеСлово;

      КонецЦикла;
      Изменено: Евгений - 13.08.2020 11:49:49
       
       
       
      Дмитрий Пономаренко
      Пользователь
      Сообщений: 155 Регистрация: 09.03.2016
      #2
      21.12.2017 14:31:39
      Спасибо, мне такой алгоритм давно требовался, но не решался написать запрос.
       
       
       
      Евгений
      Администратор
      Сообщений: 2870 Регистрация: 04.07.2011
      #3
      21.12.2017 14:36:32
      Хах. Дима - он в обработке загрузки с самого начала в примерах есть в нечетком поиске.
      Так и называется )
       
       
       
      Евгений
      Администратор
      Сообщений: 2870 Регистрация: 04.07.2011
      #4
      21.12.2017 14:40:51
      Может получится что алгоритм оставит еще всякий всякий мусор, например R2, P56. А артикул будет F0123456
      Алгоритм оставит все эти слова (будет строка из всех). А может получится что нужно оставить только длинное слово.

      Тогда еще можно добавить условие по проверке. Например не добавлять в строку слова, состоящих из 2-3 символов.
      В таком случае перед Значение = Значение+" "+СтрКлючевоеСлово; еще можно добавить

      Если СтрДлина(СтрКлючевоеСлово) < 3 Тогда
      Продолжить;
      КонецЕсли;
       
       
       
      Страницы: 1
      Читают тему
      Подписывайтесь на новости и акции:
      Компания
      Об авторе
      История
      Лицензии
      Партнеры
      Контакты
      Разработки 1С
      Мегапрайс PRO
      Загрузка прайсов в 1С
      Анализатор прайсов
      Помощник установки цен
      Помощник продаж
      Помощник закупок
      Услуги
      Услуги по 1С
      Парсеры прайсов
      Создание сайтов
      Техподдержка
      Информация
      Договор-оферта
      Наши контакты

      8 (995) 091-01-01
      В онлайне: с 10:00 до 18:00
      Skype: shekineugeniy
      support@subsystems.ru
      © 2021 Все права защищены. Работает на 1С-Битрикс
      0

      Корзина

      Ваша корзина пуста

      Исправить это просто: выберите в каталоге интересующий товар и нажмите кнопку «В корзину»
      В каталог