Startseite > Template- und Themeprogrammierung > Skriptsprache > String Befehle

String-Befehle

upcase

Der <liquid>upcase</liquid> Filter verwandelt die Ausgabe eines Strings in Großbuchstaben.

<liquid-input>
{{ 'julia' | upcase }}
</liquid-input>

<liquid-output>
JULIA
</liquid-output>

downcase

Der <liquid>downcase</liquid> Filter verwandelt alle Großbuchstaben des übergebenen Strings in Kleinbuchstaben.

<liquid-input>
{{ 'JuLIa AnD ottO' | downcase }}
</liquid-input>

<liquid-output>
julia and otto
</liquid-output>

capitalize

Der <liquid>capitalize</liquid> Filter verwandelt, bei der Ausgabe, den ersten Buchstaben eines Strings in Großbuchstaben.

<liquid-input>
{{ 'julia' | capitalize }}
</liquid-input>

<liquid-output>
Julia
</liquid-output>

escape

Der <liquid>escape</liquid> Filter maskiert beim Rendern des übergebenen Strings die darin enthaltenen HTML Entitäten.

<liquid-input>
{{ '<br />' | escape }}
</liquid-input>

<liquid-output>
&lt;br/&gt;
</liquid-output>

dangerous

Der <liquid>dangerous</liquid> Filter gibt den übergebenen String aus und lässt alle darin enthaltenen HTML Entitäten unmaskiert(un-escaped).

<liquid-input>
{{ 'mc&#x27;this &amp; &quot;that&quot;&lt;br&#x2F;&gt;' | dangerous }}
</liquid-input>

<liquid-output>
mc'this & "that"
</liquid-output>

truncate

Der <liquid>truncate</liquid> Filter verkürzt standardmäßig den übergebenen String auf eine Länge von 50 Zeichen und fügt am Ende "..." hinzu.
Dem Filter können 2 Parameter übergeben werden. Der erste Parameter bestimmt die Länge des Strings. Der zweite Parameter definiert die Zeichen die am Ende des abgeschnittenen Strings angehängt werden. 

<liquid-input>
{{ 'I am the very model of a modern major general, really.' | truncate }}
{{ 'Julia' | truncate: 3 }}
{{ 'Julia' | truncate: 3, '--- }}
</liquid-input>

<liquid-output>
I am the very model of a modern major general, rea...
Jul...
Jul---
</liquid-output>

truncatewords

Der <liquid>truncatewords</liquid> Filter verkürzt standardmäßig eine übergebene Zeichenkette auf eine Länge von 15 Wörter und fügt am Ende "..." hinzu.
Dem Filter können 2 Parameter übergeben werden. Der erste Parameter bestimmt die Anzahl der Wörter. Der zweite Parameter definiert die Zeichen die am Ende der neuen Zeichenkette angehängt werden. 

<liquid-input>
{{ 'a b c d e f g h i j k l m n o p q r s t u v w x y z' | truncatewords }}
{{ 'a b c d e f g h i j k l m n o p q r s t u v w x y z' | truncatewords: 5 }}
{{ 'a b c d e f g h i j k l m n o p q r s t u v w x y z' | truncatewords : 5, '---' }}
</liquid-input>

<liquid-output>
a b c d e f g h i j k l m n o...
a b c d e...
a b c d e---
</liquid-output>

strip_html

Der <liquid>strip_html</liquid> Filter entfernt beim Rendern des übergebenen Strings die darin enthaltenen HTML Tags.

<liquid-input>
{{ 'Hello <b>Julia</b>'| strip_html }}
</liquid-input>

<liquid-output>
Hello Julia
</liquid-output>

strip_newlines

Der <liquid>strip_newlines</liquid> Filter entfernt beim Rendern des übergebenen Strings die darin enthaltenen newlines.

replace

Der <liquid>replace</liquid> Filter entfernt standardmäßig beim Rendern der übergebenen Zeichenkette alle Vorkommen des als ersten Parameter übergebenen Strings. Wird der Filter mit 2 Argumenten aufgerufen, werden alle Vorkommen des ersten Arguments durch das zweite Argument ersetzt.

<liquid-input>
{{ 'banana' | replace: 'a' }}
{{ 'banana' | replace: 'a' , 'e'}}
</liquid-input>

<liquid-output>
bnn
benene
</liquid-output>

replace_first

Der <liquid>replace_first</liquid> Filter entfernt standardmäßig beim Rendern der übergebenen Zeichenkette nur dass erste Vorkommen des als Parameter übergebenen Strings. Wird der Filter mit 2 Parameter aufgerufen, wird nur dass erste Vorkommen des ersten, als Parameter übergebenen Strings, durch den zweiten, als Parameter übergebenen String, ersetzt.

<liquid-input>
{{ 'banana' | replace_first: 'a' }}
{{ 'banana' | replace_first: 'a', 'e' }}
</liquid-input>

<liquid-output>
bnana
benana
</liquid-output>

newline_to_br

Der <liquid>newline_to_br</liquid> Filter fügt beim Rendern des übergebenen Strings vor jedes newline Vorkommen ein HTML <br/> Tag ein.

split

Der <liquid>split</liquid> Filter wandelt eine Zeichenkette in ein Array um, wobei über das gewünschte Trennzeichen ein Parameter übergeben werden kann. Sofern kein Trennzeichen übergeben wird, verwendet der Filter ein Leerzeichen als Trennzeichen. Der Befehl kann z.B. verwendet werden, um eine Zeichenkette mit kommaseparierten Werten in ein Array umzuwandeln.

<liquid-input>
{% assign colors = "red, blue, green, yellow" | split: ", " %}
{% for color in colors %}
  {{ color }} is a color.<br />
{% endfor %}
</liquid-input>

<liquid-output>
red is a color.
blue is a color.
green is a color.
yellow is a color.
</liquid-output>

highlight

Der <liquid>highlight</liquid> Filter kann 2 Argumente entgegennehmen. Wird der Filter mit einem String oder Zahl als erstes Argument aufgerufen, wird jedes Vorkommen dieses Arguments mit einem HTML span Tag, welches eine CSS Klasse mit dem Namen 'highlight' enthält, gewrapped. Dies funktioniert sowohl für komplette Strings als auch für Substrings. Das erste Argument kann auch eine komma-separierte Liste mit Strings enthalten.
Mit dem 2. Argument kann der Name der CSS Klasse überschrieben werden.   

<liquid-input>
{{ 'I was born in a very small town.' | highlight: 'very' }}
{{ 'I was born in a very small town.' | highlight: 've' }}
{{ 'I was born in a very small town.' | highlight: 'very', 'myCssClass' }}
{{ 'I was born in a very small town.' | highlight: 'very, town' }}
</liquid-input>

<liquid-output>
I was born in a <span class="highlight">very</span> small town.
I was born in a <span class="highlight">ve</span>ry small town.
I was born in a <span class="myCssClass">very</span> small town.
I was born in a <span class="highlight">very</span> small <span class="highlight">town</span>.
</liquid-output>

concat

Der <liquid>concat</liquid> Filter verknüpft zwei oder mehrere Strings. Wird der Filter auf eine Zahl angewendet, wird diese Zahl als verknüpfter String ausgegeben.

<liquid-input>
{{ 'foo' | concat:'-bar' }}
{{ 'foo' | concat:'-bar', '-baz', '-bop' }}
{% assign bar='-bar' %} {{ 'foo' | concat:bar }}
{% assign bar='-bar' %} {{ 'foo' | concat:bar,bar,bar }}
{% assign bar='-bar' %} {{ 1234 | concat:bar,bar,bar }}
</liquid-input>

<liquid-output>
foo-bar
foo-bar-baz-bop
foo-bar
foo-bar-bar-bar
1234-bar-bar-bar
</liquid-output>

lpad

Der <liquid>lpad</liquid> Filter füllt den übergebenen Wert mit Nullen auf (links beginnend) bis der Wert die Länge des übergebenden ersten Parameters hat. Wird ein zweites Argument übergeben, enthält dieses den String mit dem aufgefüllt wird.

<liquid-input>
{{ '123' | lpad: 5 }}
{{ '123' | lpad: 5, '-' }}
</liquid-input>

<liquid-output>
00123
--123
</liquid-output>

rpad

Der <liquid>rpad</liquid> Filter füllt den übergebenen Wert mit Nullen auf (rechts beginnend) bis der Wert die Länge des übergebenden ersten Parameters hat. Wird ein zweites Argument übergeben, enthält dieses den String mit dem aufgefüllt wird.

<liquid-input>
{{ '123' | rpad: 5 }}
{{ '123' | rpad: 5, '-' }}
</liquid-input>

<liquid-output>
12300
123--
</liquid-output>

lstrip

Der <liquid>lstrip</liquid> Filter entfernt alle Leerräume (tabs, spaces, newlines) am Anfang des übergebenen Strings. Leerräume zwischen den Wörtern sind davon nicht betroffen.

<liquid-input>
{{ '          Hello Julia and Otto!          ' | lstrip }}
</liquid-input>

<liquid-output>
Hello Julia and Otto!
</liquid-output>

rstrip

Der <liquid>rstrip</liquid> Filter entfernt alle Leerräume (tabs, spaces, newlines) am Ende des übergebenen Strings. Leerräume zwischen den Wörtern sind davon nicht betroffen.

<liquid-input>
{{ '          Hello Julia and Otto!          ' | rstrip }}
</liquid-input>

<liquid-output>
Hello Julia and Otto!
</liquid-output>

strip

Der <liquid>strip</liquid> Filter entfernt alle Leerräume (tabs, spaces, newlines) am Anfang und am Ende des übergebenen Strings. Leerräume zwischen den Wörtern sind davon nicht betroffen.

<liquid-input>
{{ '          Hello Julia and Otto!          ' | strip }}
</liquid-input>

<liquid-output>
Hello Julia and Otto!
</liquid-output>

prepend

Der <liquid>prepend</liquid> Befehl fügt am Anfang eines Strings oder Zahl den 2. übergebenen Parameter hinzu. 

<liquid-input>
{{ 'Julia' | prepend:'Otto, ' }}
{{ 1 | prepend: 2 ' - ' }}
</liquid-input>

<liquid-output>
Otto, Julia
2 - 1
</liquid-output>

slice

Der <liquid>slice</liquid> Befehl extrahiert einen Teilbereich eines Strings und gibt eine neuen String zurück. Als erstes Argument wird der Anfangindex (beginnend mit 0) angegeben. Ein optionales zweites Argument spezifiziert die Länge des neuen Strings. Wird kein zweites Argument angegeben ist der neu generierte String ein Zeichen lang.

<liquid-input>
{{ 'Liquid' | slice: 0 }}
{{ 'Liquid' | slice: 2 }}
{{ 'Liquid' | slice: 2, 5 }}
{{ 'Liquid' | slice: 3, 2 }}
{{ (1..5) | slice: 0 }}
{{ (1..5) | slice: 1, 3 | join: '-' }}
</liquid-input>

<liquid-output>
L
q
quid
ui
1
2-3-4
</liquid-output>