Updated Drupal to 8.6. This goes with the following updates because it's possible...
[yaffs-website] / vendor / twig / twig / doc / filters / split.rst
1 ``split``
2 =========
3
4 .. versionadded:: 1.10.3
5     The ``split`` filter was added in Twig 1.10.3.
6
7 The ``split`` filter splits a string by the given delimiter and returns a list
8 of strings:
9
10 .. code-block:: jinja
11
12     {% set foo = "one,two,three"|split(',') %}
13     {# foo contains ['one', 'two', 'three'] #}
14
15 You can also pass a ``limit`` argument:
16
17 * If ``limit`` is positive, the returned array will contain a maximum of
18   limit elements with the last element containing the rest of string;
19
20 * If ``limit`` is negative, all components except the last -limit are
21   returned;
22
23 * If ``limit`` is zero, then this is treated as 1.
24
25 .. code-block:: jinja
26
27     {% set foo = "one,two,three,four,five"|split(',', 3) %}
28     {# foo contains ['one', 'two', 'three,four,five'] #}
29
30 If the ``delimiter`` is an empty string, then value will be split by equal
31 chunks. Length is set by the ``limit`` argument (one character by default).
32
33 .. code-block:: jinja
34
35     {% set foo = "123"|split('') %}
36     {# foo contains ['1', '2', '3'] #}
37
38     {% set bar = "aabbcc"|split('', 2) %}
39     {# bar contains ['aa', 'bb', 'cc'] #}
40
41 .. note::
42
43     Internally, Twig uses the PHP `explode`_ or `str_split`_ (if delimiter is
44     empty) functions for string splitting.
45
46 Arguments
47 ---------
48
49 * ``delimiter``: The delimiter
50 * ``limit``:     The limit argument
51
52 .. _`explode`:   https://secure.php.net/explode
53 .. _`str_split`: https://secure.php.net/str_split