Перейти к основному содержимому

Строковые фильтры

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

append​

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

Пример:

{{ 'sales' | append: '.jpg' }}

Вывод

sales.jpg

capitalize​

Делает первую букву каждого слова строки прописной

Пример:

{{ 'capitalize me' | capitalize }}

Вывод

Capitalize Me

downcase​

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

Пример:

{{ 'UPPERCASE' | downcase }}

Вывод

uppercase

prepend​

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

Пример:

{{ 'sale' | prepend: 'Made a great ' }}

Вывод

Made a great sale

delete​

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

Пример:

{{ "Hello, world. Goodbye, world." | remove: "world" }}

Вывод

Hello, . Goodbye, .

remove_first​

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

Пример:

{{ "Hello, world. Goodbye, world." | remove_first: "world" }}

Вывод

Hello, . Goodbye, world.

replace​

Заменяет все вхождения строки подстрокой.

Пример:

<!-- product.title = "Awesome Shoes" -->
{{ product.title | replace: 'Awesome', 'Mega' }}

Вывод

Mega Shoes

replace_first​

Заменяет первое вхождение строки подстрокой.

Пример:

<!-- product.title = "Awesome Awesome Shoes" -->
{{ product.title | replace_first: 'Awesome', 'Mega' }}

Вывод

Mega Awesome Shoes

slice​

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

Пример:

{{ "hello" | slice: 0 }}
{{ "hello" | slice: 1 }}
{{ "hello" | slice: 1, 3 }}

Вывод

h
e
ell

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

Пример:

{{ "hello" | slice: -3, 2 }}

Вывод

ll

split​

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

Пример:

{% assign words = "Hi, how are you today?" | split: ' ' %}

{% for word in words %}
{{ word }}
{% endfor %}

Вывод

Hi,
how
are
you
today?

strip​

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

Пример:

{{ ' too many spaces ' | strip }}

Вывод

too many spaces

lstrip​

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

Пример:

{{ ' too many spaces ' | lstrip }}

Вывод

<!-- Highlight to see the empty spaces to the right of the string -->
too many spaces

rstrip​

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

Пример:

{{ ' too many spaces ' | rstrip }}

Вывод

<!-- Notice the empty spaces to the left of the string -->
too many spaces

truncate​

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

Пример:

{{ "The cat came back the very next day" | truncate: 13 }}

Вывод

The cat ca...

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

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

Длина второго параметра учитывается в количестве символов, указанных в первом параметре. Например, если вы хотите обрезать строку до 10 символов и использовать 3-символьный многоточие, используйте 13 для первого параметра truncate, поскольку многоточие считается как 3 символа.

Пример:

{{ "ABCDEFGHIJKLMNOPQRSTUVWXYZ" | truncate: 18, ", and so on" }}

Вывод

ABCDEFG, and so on

Нет многоточия​

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

Пример:

{{ "I'm a little teapot, short and stout." | truncate: 15, "" }}

Вывод

I'm a little te

truncatewords​

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

вход

{{ "The cat came back the very next day" | truncatewords: 4 }}

Вывод

The cat came back...

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

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

Пример:

{{ "The cat came back the very next day" | truncatewords: 4, "--" }}

Вывод

The cat came back--

Нет многоточия​

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

Пример:

{{ "The cat came back the very next day" | truncatewords: 4, "" }}

Вывод

The cat came back

upcase​

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

Пример:

{{ 'i want this to be uppercase' | upcase }}

Вывод

I WANT THIS TO BE UPPERCASE

reverse​

reverse не может использоваться напрямую со строкой, но вы можете разбить строку на массив, обратить массив и вернуться к нему, связав вместе другие фильтры массивов:

Пример:

{{ "Ground control to Major Tom." | split: "" | reverse | join: "" }}

Вывод

.moT rojaM ot lortnoc dnuorG