Строковые фильтры используются для управления выходами и переменными типа string.


В этом материале


append

Добавляет символы в строку.

{{ 'sales' | append: '.jpg' }}
Вывод
sales.jpg

capitalize

Преобразует первый символ каждого слова в строке к верхнему регистру. Фильтр работает только с латинскими символами.

{{ 'capitalize me, please' | capitalize }}
Вывод
Capitalize Me, Please

downcase

Преобразует строку в нижний регистр.

{{ 'ВЕРХНИЙ РЕГИСТР' | downcase }}
Вывод
верхний регистр

escape

Преобразует все возможные символы в соответствующие HTML-сущности.

{{ "<p>test</p>" | escape }}
Вывод
&lt;p&gt;test&lt;/p&gt;
<!-- Примечание: браузер будет визуально отображать это как <p>test</p> -->

prepend

Добавляет указанную строку в начало другой строки.

{{ 'продажи' | prepend: 'Сделаны большие ' }}
Вывод
Сделаны большие продажи

remove

Удаляет все вхождения подстроки из строки.

{{ "Привет мир. Прощай мир." | remove: " мир" }}
Вывод
Привет. Прощай.

remove_first

Удаляет только первое вхождение подстроки из строки.

{{ "Привет мир. Прощай мир." | remove_first: " мир" }}
Вывод
Привет. Прощай мир.

slice

Фильтр slice возвращает подстроку, начиная с указанного индекса. Дополнительный второй параметр может быть передан для указания длины подстроки.

{{ "привет" | slice: 0 }}<br>
{{ "привет" | slice: 1 }}<br>
{{ "привет" | slice: 1, 3 }}
Вывод
привет
ривет
рив

Если переданный индекс отрицательный, он отсчитывается от конца строки.

{{ "привет" | slice: -3, 2  }}
Вывод
пр

split

Фильтр split принимает подстроку в качестве параметра. Подстрока используется как разделитель для разделения строки на массив. Вы можете выводить различные части массива с помощью фильтров массивов.

{% assign words = "Привет, как дела?" | split: ' ' %}

{% for word in words %}
  {{ word }}<br>
{% endfor %}
Вывод
Привет,
как
дела?

strip

Удаляет табуляцию, пробелы и новые строки (все пробелы) с левой и правой стороны строки.

{{ '   слишком много пробелов      ' | strip }}
Вывод
слишком много пробелов

lstrip

Удаляет табуляцию, пробелы и новые строки (все пробелы) с левой стороны строки.

{{ '   слишком много пробелов      ' | lstrip }}
Вывод
<!-- Выделите, чтобы увидеть пробелы справа от строки -->
слишком много пробелов

rstrip

Удаляет табуляцию, пробелы и новые строки (все пробелы) с правой стороны строки.

{{ '   слишком много пробелов      ' | rstrip }}
Вывод
<!-- Обратите внимание на пустое пространство слева от строки -->
слишком много пробелов

strip_html

Удаляет любые HTML-теги из строки.

{{ "<h1>Привет</h1> мир!" | strip_html }}
Вывод
Привет мир!

strip_newlines

Удаляет любые строки break/newlines из строки.

{{ product.description | strip_newlines }}

truncate

Усекает строку до количества символов, переданных в качестве первого параметра. Многоточие (...) добавляется к усеченной строке и не входит в количестве символов.

{{ "Кошка вернулась на следующий день" | truncate: 15 }}
Вывод
Кошка вернулась…

Пользовательское многоточие

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

{{ "ABCDEFGHIJKLMNOPQRSTUVWXYZ" | truncate: 18, ", и так далее" }}
Вывод
ABCDEFGHIJKLMNOPQR, и так далее

Без многоточия

Вы можете усечь точное количество символов, заданных первым параметром, и не показывать завершающих символов, передав пустую строку в качестве второго параметра:

{{ "I'm a little teapot, short and stout." | truncate: 15, "" }}
Вывод
I'm a little te

truncatewords

Усекает строку до количества слов, переданных в качестве первого параметра. Многоточие (...) добавляются к обрезанной строке.

{{ "Кошка вернулась на следующий день" | truncatewords: 2 }}
Вывод
Кошка вернулась…

Пользовательское и без многоточия

Также, как и для фильтра truncate вы можете использовать второй параметр.


upcase

Преобразует строку в верхний регистр.

{{ 'я хочу, чтобы это было в верхнем регистре' | upcase }}
Вывод
Я ХОЧУ, ЧТОБЫ ЭТО БЫЛО В ВЕРХНЕМ РЕГИСТРЕ

url_encode

Преобразует любые URL-небезопасные символы в строке в проценты.

{{ "Адрес электронной почты защищен от спам-ботов. Для просмотра адреса в браузере должен быть включен Javascript." | url_encode }}
Вывод
support%40jkassa.com

Обратите внимание, что url_encode превратит пробел в знак + вместо символа с процентом.

{{ "JKassa Support" | url_encode }}
Вывод
JKassa+Support

url_decode

Декодирует любые кодированные последовательности %## в данной строке. Символ "плюс" + декодируется в символ пробела.

{{ "support%40jkassa.com" | url_decode }}
Вывод
Адрес электронной почты защищен от спам-ботов. Для просмотра адреса в браузере должен быть включен Javascript.