2020-07-08

Получение текста с использованием регулярных выражений

Регуля́рные выраже́ния (англ. regular expressions) — формальный язык поиска и осуществления манипуляций с подстроками в тексте, основанный на использовании метасимволов (символов-джокеров, англ. wildcard characters). Описание на сайте википедиа.

Регулярные выражения можно задавать для всех категорий товаров базового каталога, так и для выбранных. Если требуется применение регулярных выражений для конкретных категорий, тогда товары из прайса должны быть распределены по категориям базового каталога. Если необходимо настроить применение регулярных выражений для всех категорий, тогда выберите пункт "Список категорий".
При работе с регулярными выражениями, для замены значений используется функция REGEXP_REPLACE(subject, pattern, replace), тут есть её описание.

Как настроить получение нужного вам текста.
Пример получения текста, который указан после запятой. Используется регулярное выражение: [^,]*$

  1. Выберите категорию товара слева.
  2. Выберите поле источник откуда брать значение для применения регулярного выражения.
  3. Выберите поле назначение, то есть куда сохранять результат работы регулярного выражения.
  4. Укажите регулярное выражение.
  5. Укажите текст для проверки.
  6. Нажмите кнопку "Тестировать", в поле "результат" появится значение, которое удалось получить через использование регуляного выражения



Описание колонок
1. Поле источник - откуда брать значение для обработки его через регулярные выражения.
2. Поле назначение - куда сохранять результат работы регулярного выражения.
3. Регулярное выражение.
4. Обратные ссылки на подвыражения - позволяет получить группу результата регулярного выражения, например: /2.
5. Порядок применения - под разные условия можно задать порядок.
6. Заменять, если пустой результат РВ - при активации этого флага будет произведена проверка результата выражения, если он пустой, тогда значение для поля назначения не будет заполнено пустым результатом.
7. Значение по умолчанию, если пустой результат РВ - фиксированное значения для поля назначения, если результат выражения пустой.
8. Значение по умолчанию, если не пустой результат РВ - фиксированное значения для поля назначения, если результат выражения имеет какой-то текст (не пустое значение).
9. Производитель - учитывать выбранного производителя товара для применения выражения.
10. Вырезать значение из поля источника - результат работы выражения будет вырезан из значения источника
11. Активность - статус активности выражения для применения его к товарам.
12. Примечание - любой комментарий, например для чего это выражение и что оно делает.

Регулярное выражение можно текстировать сразу на товарах загруженных из прайса, для этого откройте вкладку "На основании товаров" и нажмите кнопку "Тестировать"

Еще один вариант составления регулярного выражения это использование визуального редактора созданного специально для этих целей.

Необходимо указать исходный текст (2) для которого будет применяться регулярное выражение, начать составлять его (1) и в правой части наблюдать за результатом (3).


Примеры регулярных выражений

Получение артикула товара указанного в скобках
(?<=\().+?(?=\))
Получение числового артикула товара указанного в скобках
(?<=\()[\d]*(?=\))


Автоматизация интернет магазинов

2020-07-08 Автор: Юрий Селезнёв

Далее