4

我知道如何在 TWIG 中获取字符串的第一个字母

<p>The first letter is {{someString | first}}</p>

使用 HTML 字符串,例如

<p>This is a sting</p>

以上将返回'<'

添加 'Raw'/'escape' 最终得到相同的结果。

我需要将该字符串显示为 HTML(与 Raw 一样),但要获取第一个字母(在上述情况下为“T”)。

我是否以错误的顺序使用过滤器?

有谁知道 ?

非常感谢

@Matteo 的答案已经很接近了,但并不完全是我想要的。我可能错误地提出了我的问题。对不起。

所以如果我有这样的字符串

<p>This is a <strong>string</strong></p>

使用 raw 会给

这是一个字符串

现在我真正需要的是让第一个字母(T)来做一些事情,比如在它周围添加标签

<span>T</span>his is a <strong>string</string>

同时仍然保留 HTML 的其余部分。Striptags 删除字符串中的所有标签并返回一个没有 HTML 部分的纯字符串。我希望我的表述是正确的。

4

2 回答 2

5

您可以使用striptags过滤器:

<p>The first letter is {{someString|striptags | first}}</p>

这里有一个工作解决方案

希望这有帮助

于 2016-09-09T13:29:20.550 回答
0

这个怎么样:

{% set someString = "This is a <strong>String<strong>"%}

<span>{{someString|striptags|first}}</span>{{someString|slice[4:]|raw}}

您可以在 twigFiddle 中尝试:http: //twigfiddle.com/pk10ip

于 2016-09-10T15:27:35.783 回答