Twig:在Twig中使用正则表达式?

时间:2015-04-16 14:19:47

标签: regex symfony twig

我想要重组一个值,例如"slugName = Spain & Italy"

当我在TWIG {{ slugName|slugify }}中制作我的slug时,结果为Spain_amp_Italy

是否可以在Twig中设置REGEX,以便我的"&"例如,将翻译成"和" ? 致谢

2 个答案:

答案 0 :(得分:4)

您可以连接多个过滤器,并使用简单的函数replace()

{{ slugName| replace({'&': 'and'}) | slugify }}

答案 1 :(得分:0)

您可以创建一个自定义函数来完成此操作

<?php
$twig->addFilter(new Twig_Filter('ampersand_to_and', function( $string = '' ) {

    return preg_replace('/(&amp;|&)/m', 'and', $string );
}));

,然后可以按以下方式使用它:

<p>{{ 'Spain & Italy'|ampersand_to_and }}</p>
<p>{{ 'Spain &amp; Italy'|ampersand_to_and }}</p>