Типы функций
Подробнее про синтаксис и применение функций читайте в этой статье
По типу использования все функции можно разделить на:
Обрезка
Обрезают содержимое тега по заданным параметрам.
ВзятьДо
Функция позволяет обрезать значение до заданного объекта.
В Аргументе-1 нужно указать число - до какого по порядку объекта нужно обрезать значение тега (если до первого встретившегося значения, то первый аргумент имеет значение 1). В Аргументе-2 указывается объект, до какого нужно обрезать значение. Аргумент-3 указывает слева (с начала выражения) или справа(с конца выражения) надо отсчитывать номер указанный в Аргументе-1. Аргумент-4 имеет два значения: включая - значит результат действия функции будет содержать объект из Аргумента-2, и не включая - значит функция обрежет тег до объекта из Аргумента-2.
Аргументы 3 и 4 являются необязательным, без аргумента 3 подсчет по умолчанию начнется слева, а без аргумента 4 по умолчанию функция будет обрезать не включая объект из аргумента 2.
Аргумент-1 | Аргумент-2 | Аргумент-3 | Аргумент-4 |
---|---|---|---|
порядковый номер элемента | слова символа цифры кириллица латиница значение (вводится вручную) тег |
слева справа |
включая не включая |
Условие:
#model# = Samsung Galaxy S5 16Gb SM-G900F синий
Результат генерации:
#model*ВзятьДо(1,кириллица,слева,не включая)# = Samsung Galaxy S5 16Gb SM-G900F
Условие:
#name# = Атлант расправил плечи (комплект из 3 книг)
Результат генерации:
Книга #name*ВзятьДо(1,'(','слева','не включая')# = Книга Атлант расправил плечи
ВзятьПосле
Функция позволяет взять значение тега после заданного объекта.
В аргументе 1 нужно указать число - после какого по порядку объекта нужно взять значение тега. Аргумент-2 указывается объект, после какого нужно обрезать значение. Аргумент-3 указывает слева (с начала выражения) или справа(с конца выражения)надо отсчитывать номер указанный в Аргументе-1. Аргумент-4 имеет два значения: включая - значит результат действия функции будет содержать объект из Аргумента-2, и не включая - значит функция обрежет тег после объекта из Аргумента-2.
Аргументы 3 и 4 являются необязательным, без аргумента 3 подсчет по умолчанию начнется слева, а без аргумента 4 по умолчанию функция будет обрезать не включая объект из аргумента 2.
Аргумент-1 | Аргумент-2 | Аргумент-3 | Аргумент-4 |
---|---|---|---|
порядковый номер элемента | слова символа цифры кириллица латиница значение (вводится вручную) тег |
слева справа |
включая не включая |
Условие:
#name# = Этой ночью, мы заставим их запомнить. Это Зион! И мы не боимся!
Результат генерации:
#name*ВзятьПосле(1,'.','слева','не включая')# = Это Зион! И мы не боимся!
ВзятьТолько
Оставляет в качестве значений тега символы соответствующие Аргументу-1
Аргумент-1 |
---|
цифры кириллица латиница буквы |
Условие:
#model# = w 3240
Результат генерации:
#model*ВзятьТолько(цифры)# = 3240
Текстовые
РазбитьНаЧасти
Функция разделяет значение выражения на комбинации по одному слову (но не меньше 4 символов), по 2 слова, по три слова и тд.
Функция РазбитьНаЧасти не содержит Аргументов.
Условие:
#model# = Galaxy S5 SM-G900F
Результат генерации:
#model*!РазбитьНаЧасти()#=Galaxy, Galaxy S5, SM-G900F, SM-G900F Galaxy, SM-G900F S5
РазбитьПоСимволу
Функция РазбитьПоСимволу разбивает одну строку на несколько строк по заданному символу. Функцию удобно использовать для добавления списка продающих слов к названию модели или для добавления списка дополнительных ключевых запросов.
Аргумент-1 |
---|
Символ, по которому необходимо разбить строку. Если в качестве разделителя используется запятая, запишите ее в ' ' (одинарных кавычках) |
Условие:
#param_тип# = купить;цена;продажа
#model# =KGE 36AL20R
Результат генерации:
#model# #param_тип*!РазбитьПоСимволу(;)# = KGE 36AL20R купить, KGE 36AL20R цена, KGE 36AL20R продажа
Сцепить
Функция Сцепить работает также как одноименная функция в Excel, соединяя значения аргументов, перечисленных через запятую
ЦифраБуква
Функция ставит пробел в связке цифры и буквы.
Функция ЦифраБуква не содержит Аргументов.
Условие:
#model# = w3240
Результат генерации:
#model*!ЦифраБуква()# = w 3240
Логические
Если
Работает как одноименная функция в Excel. В качестве Аргумента-1 пишется условие, если условие выполняется то выражение генерится через функцию указанную в Аргументе-2, если условие не выполняется на тег действует функция указанная в Аргументе-3.
Аргумент-1 | Аргумент-2 | Аргумент-3 |
---|---|---|
условие | действие при выполнении условия | действие при НЕ выполнении условия |
Условие:
vendor=Bosch
model=KGE 36AL20R
Результат генерации:
#model*!Если(Содержит(Тег(vendor)),Сцепить(Тег(model)),Сцепить(Тег(vendor), ,Тег(model)))#=Bosch KGE 36AL20R
Содержит
Функция Содержит работает как фильтр. Аргумент 1 определяет объект, который должен присутствовать в результате генерации, Аргументы 2 и 3 определяют минимальные и максимальные границы для количества совпадений, а Аргументы 4 и 5 определяют границы непрерывной последовательности, в которой будет осуществляться поиск значений, соответствующих объекту из Аргумента 1.
Функцию можно использовать только с Аргументом 1, с Аргументами 1-3 или с Аргументами 1-5.
Аргумент-1 | Аргумент-2 | Аргумент-3 | Аргумент-4 | Аргумент-5 |
---|---|---|---|---|
- все (любое) - цифры - кириллица - латиница - буквы - значение (вводится вручную) - тег |
Минимальное количество совпадений для Аргумента 1. | Максимальное количество совпадений для Аргумента 1. | Минимальный размер непрерывной последовательности для поиска совпадений. | Максимальный размер непрерывной последовательности для поиска совпадений. |
Условие:
#model# = телевизор samsung 40F6400
Результат генерации:
#model*!РазбитьНаЧасти(),!НеСодержит('буквы',1,1),!НеСодержит('кириллица')# = 40F6400 samsung
НеСодержит
Функция НеСодержит работает как фильтр. Аргумент 1 определяет объект, который НЕ должен присутствовать в результате генерации, Аргументы 2 и 3 определяют минимальные и максимальные границы для количества совпадений, а Аргументы 4 и 5 определяют границы непрерывной последовательности, в которой будет осуществляться поиск значений, соответствующих объекту из Аргумента 1.
Функцию можно использовать только с Аргументом 1, с Аргументами 1-3 или с Аргументами 1-5.
Аргумент-1 | Аргумент-2 | Аргумент-3 | Аргумент-4 | Аргумент-5 |
---|---|---|---|---|
- все (любое значение) - цифры - кириллица - латиница - буквы - значение (вводится вручную) - тег |
Минимальное количество совпадений для Аргумента 1. | Максимальное количество совпадений для Аргумента 1. | Минимальный размер непрерывной последовательности для поиска совпадений. | Максимальный размер непрерывной последовательности для поиска совпадений. |
Условие:
#model# = телевизор samsung U9000
Результат генерации:
#model*РазбитьНаЧасти(),!Содержит('цифры',1,3)# = U9000, U9000 Телевизор, U9000 Samsung
Ссылки
Позволяют работать с URL-ами.
КодироватьДляСсылки
Перекодирует кириллические и специальные символы в URL. Функция может быть использована только в поле "Выражение для URL" на вкладке "Ссылки" и в строках для ссылок дополнительных ссылок.
Условие:
#url# = http://site.ru/
#typeprefix# = утюги
Результат генерации:
#url#?utm_campaign=#typeprefix*!КодироватьДляСсылки()#=http://site.ru/?utm_campaign=%D1%83%D1%82%D1%8E%D0%B3%D0%B8
ПрисоединитьUtm
Добавляет к ссылке знак ?,если в исходном url знак вопроса не встречается, и знак &, если в исходном url уже использовался знак ?. Исключение составляют случаи, когда знак ? или & являются последними символами в передаваемом url. Функция может быть полезна, если вы хотите прописать значение utm самостоятельно, но не уверены, как формируются url в исходном файле или не изменит ли клиент значения ссылок со временем. Функция может быть использована только в поле "Выражение для URL" на вкладке "Ссылки" и в строках для ссылок дополнительных ссылок.
Условие:
#url# = http://site.ru/search/index.php/?q=direct/
Результат генерации:
#url*ПрисоединитьUtm()# = http://site.ru/search/index.php/?q=direct/&
Условие:
#url# = http://site.ru/search/index.php/?
Результат генерации:
#url*ПрисоединитьUtm()# = http://site.ru/search/index.php/?
УдалитьUtm
Удаляет из ссылок utm-метку, передаваемую в исходном файле. Функция полезна, если вы хотите присвоить ссылке новые метки или воспользоваться автопометкой К50::Генератора. Функция может быть использована только в поле "Выражение для URL" на вкладке "Ссылки" и в строках для ссылок дополнительных ссылок.
Условие:
#url# = http://site.ru/?utm_source=yandex.market&utm_medium=cpc&utm_campaign=bosch
Результат генерации:
#url*!УдалитьUtm()#=http://site.ru/
Условие:
#url# = http://site.ru/?utm_source=yandex.market&utm_medium=cpc&utm_campaign=bosch
Результат генерации:
#url*!УдалитьUtm()#?utm_source=yandex.direct = http://site.ru/?utm_source=yandex.direct
Регистр
Позволяют изменять регистр
БольшиеБуквы
Изменяет регистр всех символов в значении тега на заглавный. Функция может быть использована только для формирования заголовков объявлений, текстов объявлений или текстов дополнительных ссылок.
Условие:
#place# = Мхат
Результат генерации:
#place*!БольшиеБуквы()# = МХАТ
ВсеСБольшойБуквы
Изменяет регистр всех первых символов в словах в значении тега на заглавный, все остальные символы пишутся в строчном регистре. Функция может быть использована только для формирования заголовков объявлений, текстов объявлений или текстов дополнительных ссылок.
Условие:
#name# = ЭЛЛИптический ТРЕнажер
Результат генерации:
#typeprefix*!ВсеСБольшойБуквы()#=Эллиптический Тренажер
МаленькиеБуквы
Изменяет регистр всех символов в значении тега на строчный регистр. Функция может быть использована только для формирования заголовков объявлений, текстов объявлений или текстов дополнительных ссылок.
Условие:
#name# = ЭЛЛИптический ТРЕнажер
Результат генерации:
#typeprefix*!МаленькиеБуквы()#=эллиптический тренажер
СБольшойБуквы
Изменяет регистр первого символа в первом слове в значении тега на заглавный, все остальные символы пишутся в строчном регистре. Функция может быть использована только для формирования заголовков объявлений, текстов объявлений или текстов дополнительных ссылок.
Условие:
#name# = ЭЛЛИптический ТРЕнажер
Результат генерации:
#typeprefix*!СБольшойБуквы()#=Эллиптический тренажер
Замена
Заменяют содержимое тегов другим содержимым
Замена
Функция Замена меняет значение объекта, указанного в Аргументе-1, на значение из Аргумента-2
Аргумент-1 | Аргумент-2 |
---|---|
кириллица латиница цифры спецсимвол значение (вводится вручную) тег |
транслит раскладка значение тег |
Условие:
#typeprefix# = холодильник-морозильник
#model# = Bosch JK848
Результат генерации:
#typeprefix*!Замена(холодильник-морозильник,холодильник)# #model# = холодильник Bosch JK848
Условие:
#typeprefix# = стиральные машины
Результат генерации:
#typeprefix*!Замена(кириллица,транслит)# = stiralnye mashiny
РегулярноеВыражение
Функция РегулярноеВыражение действует по стандартным правилам функции regular.
Условие:
#model# =KGE 36AL20R
Результат генерации:
#model*!РегулярноеВыражение('([\D])(\d)','\1 \2'),!РегулярноеВыражение('(\d)([\D])','\1 \2')# = KGE 36 AL 20 R
Действие данного регулярного выражения равносильно действию функции ЦифраБуква()
Синонимы
Для использования данной функции необходимо заранее подготовить список синонимов. Подробнее про синонимы читайте в этой статье.
Функция синонимы позволяет заменять значения слов из тегов на синонимичные значения или добавлять синонимичные значения, которые вы прописываете в списке.
В Аргументе-1 прописывается название списка, в котором содержится синоним для значения.
В Аргументе-2 указывается, в каком случае надо заменять слово из тега на синоним из списка:
-
"Целиком" - замена нужна только при полном совпадении тега со значением. Например, если в списке синонимов есть строка
Sony;Сони
, то значение Sony будет заменено на Сони. -
"Часть" - замена нужна при совпадении хотя бы части тега со значением из списка синонимов. Например, если в списке синонимов есть строка
Sony;Сони
, то значение Sony&Ericsson будет заменено на Сони&Ericsson.
"Целиком" и "Часть" генерирует оба варианта (и синонимичный и исходный) вне зависимости от использования!
в функции. -
"Заменачасть" и "Заменацеликом". При использовании
!
исходный вариант слова будет, только если синонима нет в списке, в остальных случаях останется только синоним без исходного варианта. Без!
исходный вариант всегда будет сгенерирован. -
"Пусточасть" и "Пустоцеликом". Если есть результат применения функции "Синонимы", то при
!
исходное значение тега не выводится. Если нет результата применения функции, то при наличие!
или без него, исходное значение не выводится.
В Аргументе-3 - указывается что считать объектом для замены, всё слово целиком (от пробела до пробела) или часть этого слова:
-
"частьслова" - выбрано по умолчанию при добалении функции Синонимы и делает замену, даже если синоним является частью слова. Например, если в списке синонимов есть строка
Eco;Эко
, а слово в теге Ecoplast, то значение Eco будет заменено на Эко и в итоге получится Экоplast. -
"всёслово" - делает замену, только если синоним с исходным значением тега является все слово. ТО есть в данном случае для строки
Eco;Эко
, слово Eco в теге Ecoplast, заменено на Эко не будет.
Аргумент-1 | Аргумент-2 | Аргумент-3 |
---|---|---|
название списка синонимов | часть целиком заменачасть заменацеликом пусточасть пустоцеликом |
частьслова всёслово |
Условие:
#model# = культиватор husqvarna KAP 900 G
Название списка синонимов - Садовая техника
Результат генерации:
#model*Синонимы('Садовая техника','часть','частьслова')# = культиватор husqvarna KAP 900 G, купить культиватор хускварна кап 900 г
Условие:
#model# = культиватор husqvarna KAP 900 G
Название списка синонимов - Садовая техника
Результат генерации:
#model*Синонимы('Садовая техника','часть','всеслово')# = культиватор husqvarna KAP 900 G
СтопСлова
Функция ставит знак +(плюс) перед стопсловами. Стоп-слова в Яндекс.Директе — это служебные части речи и местоимения, а также любые слова, не несущие дополнительного смысла.
Условие:
#autor# = Сокол Елена
#name# = где-то есть ты
Результат генерации:
#autor# #name*!СтопСлова()# = Сокол Елена Где-то +есть +ты
Морфология
Функция для склонения слов
Форма
Приводит значение в теге к заданному падежу и числу. Падеж и число задается в Аргументах 1 и 2 соотвественно.
Аргумент-1 | Аргумент-2 |
---|---|
именительный родительный винительный дательный творительный предложный |
единственное множественное |
Условие:
#typeprefix# = очиститель воздуха
Результат генерации:
Много #typeprefix*Форма('родительный','множественное')# в наличии! = Много очистителей воздуха в наличии!
Условие:
#region# = Москва и область
Результат генерации:
Бесплатная доставка по #region*!Форма(дательный,единственное)# = Бесплатная доставка по Москве и области
Числительное
Добавляет к значению тега заданное слово указанное в аргументах в той форме, которая соответствует числительному в значении тега
Аргумент-1 | Аргумент-2 | Аргумент-3 |
---|---|---|
слово в именительном падеже в единственном числе | слово в родительном падеже в единственном числе | слово в родительном падеже во множественном числе |
Условие:
#quantity# = 2230
Результат генерации:
#quantity*!Числительное(модель,модели,моделей)# = 2230 моделей
Удаление
Удаление части фразы
ДобавитьПустоту
Добавляет вариант генерации с пустым значением тега.
Условие:
#name# = Венский Дом
Результат генерации:
Жилой комплекс #name*ДобавитьПустоту()# = Жилой комплекс, Жилой комплекс Венский Дом
ОбрезатьПоСловам
Обрезает значение тега по длине так, чтобы количество символов в результате не превышало указанное число. Обрезка происходит только по целым словам.
Исключение составляет ситуация, когда указанное в аргументе число меньше длины первого слова, тогда первое слово может либо обрезаться по символам либо может остаться в первоначальном написании. За это отвечает Аргумент-2
'Обрезать' - обрезать первое слово по количеству символов, 'Пропускать' выражение не будет сгенерированно - выберите аргумент 2 'пропускать'. Функцию удобно использовать для того, чтобы уместить Заголовки, Тексты объявлений и Тексты дополнительных ссылок в ограничение системы.
Аргумент-1 | Аргумент-2 |
---|---|
максимальное количество символов | 'обрезать' 'пропускать' |
Условие:
#name# = Don Diablo, Gorgon City, Matisse & Sadko
Результат генерации:
#name*ОбрезатьПоСловам(33,'обрезать')# = Don Diablo, Gorgon City, Matisse
УбратьПовторы
Удаляет повторяющиеся объекты в значении тега
Условие:
#model# = KGE 36AL20R KGE
Результат генерации:
#model*!УбратьПовторы()# = KGE 36AL20R
УбратьПробелы
Удаляет лишние пробелы (более одного пробела подряд, а также пробелы в начале и конце значения тега)
Условие:
#name# = Преступление и Наказание
Результат генерации:
Книга "#name*!УбратьПробелы()#" = Книга "Преступление и Наказание"
УбратьСпецсимволы
Все спец.символы в значении тега заменяются на пробел.
Если вы хотите оставить какой-то из спецсимволов, впишите его в Аргумент-1
Аргумент-1 |
---|
Спецсимволы, которые не должны удаляться. Несколько спец.символов пишутся в ' ' и разделяются запятыми |
Условие:
#name# = «Дожди&Связи»
Результат генерации:
Концерт #name*!УбратьСпецсимволы()# = Концерт Дожди Связи
Условие:
#place# = «Консерватория им.Чайковского»
Результат генерации:
#place*!УбратьСпецсимволы('.')# = Консерватория им.Чайковского
```
УбратьФразуКороче
Удаляет фразу, суммарное количество символов в которой меньше или равно цифре, указанной в качестве аргумента.
Аргумент-1 |
---|
Максимальное количество символов |
Условие:
#model# = Во фразе 20 символов
Результат генерации:
#model*!УбратьФразуКороче(21)# = Пустое значение