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

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

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

Last updated