Например, есть наименование товара
Bonna Grain Блюдце GRA GRM 01 CT (16 см, для чашки GRA BNC 01 CF на 210 мл)
И из него нужно извлечь артикул (ID товара), то есть
GRAGRM01CT
Для выполнения этой задачи есть макрос шаблона вывода [EXTRACTID]
1 2 3 4 5 6 7 | [EXTRACTID] {EXTRACT_RULES}параметры для поиска артикула{/EXTRACT_RULES} {ROUTE}направление поиска{/ROUTE} {REPLACE_BEFORE}правила поиск-замены до поиска{/REPLACE_BEFORE} {REPLACE_AFTER}правила поиск-замены после поиска{/REPLACE_AFTER} {SOURCE}строка, из которой нужно извлечь ID{/SOURCE} [/EXTRACTID] |
Параметры для поиска артикула – перечисление параметров поиска артикула через запятую.
eng – артикул может содержать буквы английского алфавита
rus – артикул может содержать буквы русского алфавита
digits – артикул может содержать числа
caps – артикул состоит только из прописных букв (заглавных)
oneword – из строки будет взято только одно слово, удовлетворяющее параметрам поиска
Направление поиска – выбор направления поиска артикула (с конца строки или от ее начала).
rev – поиск артикула от конца строки
любое другое значение – поиск артикула от начала строки
Правила поиск-замены до поиска – стандартные правила поиск-замены, которые применяются к строке, в которой искать ID товара. Эти правила поиск-замены будут применены до функций поиска артикула.
Правила поиск-замены после поиска – стандартные правила поиск-замены, которые применяются к строке, в которой искать ID товара. Эти правила поиск-замены будут после функций поиска артикула.
Строка, из которой нужно извлечь ID – сама строка из которой нужно извлечь ID или артикул товара.
Например, в заголовке товара
Bonna Grain Блюдце GRA GRM 01 CT (16 см, для чашки GRA BNC 01 CF на 210 мл)
Есть артикул
GRA GRM 01 CT
и его нужно спарсить.
Артикул состоит из заглавных букв английского алфавита или цифр и может состоять из нескольких слов.
Для его извлечения нужно использовать макрос [EXTRACTID] со следующими параметрами
1 2 3 4 5 6 7 | [EXTRACTID] {EXTRACT_RULES}eng,digits,caps{/EXTRACT_RULES} {ROUTE}rev{/ROUTE} {REPLACE_BEFORE}({skip}|{/REPLACE_BEFORE} {REPLACE_AFTER} |{/REPLACE_AFTER} {SOURCE}<CD_GRAN_1!>{/SOURCE} [/EXTRACTID] |
eng,digits,caps – указываем, что артикул состоит из английских заглавных букв и/или цифр
rev – указываем, что поиск нужно производить от конца заголовка товара
В REPLACE_BEFORE обрезаем круглые скобки
В REPLACE_AFTER убираем пробелы (которые есть в результате извлечения артикула)