Найти подстроку в строке в TWIG


132

Я хочу найти подстроку строки или проверить, нет ли такой подстроки с помощью Twig. По словам, мне нужен аналог strstr или strpos в php. Я погуглил и искал эту проблему в stackoverflow, но ничего не нашел. Кто-нибудь знает, как решить эту проблему?


2
Ничего не нашли, правда? Когда я гулю Find substring in the string in TWIG, я получаю первое попадание, которое выглядит действительно хорошо. Я не думаю, что что-то может быть лучше.
Pekka

Пожалуйста, следуйте советам, которые вам необходимо подтвердить, прежде чем размещать какие-либо вопросы. Имейте в виду, что только вы хотите чего-то и спрашиваете себя, как это запрограммировано, само по себе не считается вопросом программирования.
hakre

Пекка, спасибо за ссылку, но это не совсем то, что я нашел. strstr и strpos позволяют находить позиции подстроки в строке или возвращать false, если такой подстроки нет. Это не похоже на strpos.
user1440167

1
Если не найдешь то, что хочешь, всегда сможешь сделать сам .
Maerlyn

Ответы:


344

Просто поискал документы и нашел это :

Оператор сдерживания: Оператор in выполняет тест сдерживания. Он возвращает истину, если левый операнд содержится в правом:

{# returns true #}

{{ 1 in [1, 2, 3] }}

{{ 'cd' in 'abcde' }}

1
Можно ли использовать это внутри оператора if?
TeaCupApp

3
Да, действительно можно!
Flo Schild

4
Отлично :) Я использовал его, чтобы выяснить текущий маршрут: <li class = "{% if 'gew_team_default_' в app.request.get ('_ route')%} active {% endif%}">
Тобиас Оберраух,

@TobiasOberrauch я тоже; вы также можете использовать в app.request.pathinfoкачестве сравнения :)
neemzy

7
Для полноты
картины
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.