# Фильтры и формулы
В программе файлы можно фильтровать по статусам, типам файлов, по готовности, по предупреждениям, по наличию файла того или иного расширения, по кол-ву слов/символов в метаданных, по их значениям - в общем, для Вас теперь огромный простор для фантазии.
Каждое условие-выражение для фильтра пишется в фигурных скобках. Например, так {len(meta.keywords) > 30}
.
Давайте рассмотрим фильтры, касающиеся метаданных:
len(xxx)
означает количество xxx. Например,len(meta.keywords)
- количество ключевых слов,len(meta.title)
- это количество символов в названии, аlen(meta.description)
- это количество символов в описании.words(xxx)
означает количество слов xxx. Например,words(meta.title)
- количество слов в названии.latin(xxx)
означает что в xxx разрешены только лат. символы. Например,{latin(meta.keywords)}
- в ключевых словах разрешены только лат. символы.Можно задавать конкретные граничные значения:
{30 < len(meta.title) < 50}
- количество символов в названии должно быть в диапазоне от 31 до 49 включительно{words(meta.description) >= 10}
- количество слов в описании должно быть больше либо равно 10 Если перед этим выражение поставить знак минуса, то получится , что кол-во слов в описании должно быть строго меньше 10. Т.е.-{words(meta.description) >= 10}
то же самое, что и{words(meta.description) < 10}
Также есть специальные условия, количество которых мы будем постепенно увеличивать:
{len(meta.keywords[{words($) > 1}]) = 0}
- запрет на составные ключевые слова{meta.title <> meta.description}
- название не должно совпадать с описанием
Следующая группа фильтров касается предупреждений. Рассмотрим следующий пример: {files[*.jpg|*.jpeg|*.png].size < 25MB}
. Данную запись можно расшифровать так, размер в файлов с расширениями `.jpg, *.jpeg, .png должен быть строго меньше 25MB. Здесь есть несколько особенностей, о которых не стоит забывать:
Меру измерения(MP, B, KB и т.д.) нужно указывать без пробелов после числа.
files[*.jpg]
означает, что будут выбираться все файлы, названия которых заканчиваются на .jpg, это значит, что если написатьfiles[*test.jpg]
- фильтры будут применены только к тем файлам, которые заканчиваются наtest.jpg
. Аналогично,files[a*test.jpg]
- файлы начинаются наa
, заканчиваются наtest.jpg
. Короче говоря, символ звездочки(*) означает любое количество любых символов.files[*.eps|*.svg].size
- ограничения на размер вектораfiles[*.mov|*.mp4|*.mpg|*.avi].resolution
- ограничения на разрешение видео. Можно задавать в 2 форматах: 10MP или "1024x200".files[*.mov|*.mp4|*.mpg|*.avi].framerate in [10, 20, 25.4]
- ограничение на возможные значения частоты файлов. В квадратных скобках указываются допустимые значения