如何在 Twig 中提取从 HTML 解析的纯文本?

Posted

技术标签:

【中文标题】如何在 Twig 中提取从 HTML 解析的纯文本?【英文标题】:How do I extract a plain text parsed from HTML in Twig? 【发布时间】:2014-08-19 14:35:24 【问题描述】:

我正在用Symfony2 做一个博客项目。

我用IvoryCKEditorBundle 创建我的文章内容,然后用 article.content|raw in Twig 显示它们。

我想在我的主页上显示文章的第一行:为此,我需要解析 html 代码并提取其中的字符串。

如何在我的 Twig 模板中从 HTML 中提取纯文本?

【问题讨论】:

模板里不能做,必须用php 也许它甚至不是模板引擎的角色……好的,谢谢@Wesabi。我想我会检查这个***.com/questions/1884550/…。不过,我让问题公开,看看是否有办法在 Twig 中做到这一点。 【参考方案1】:

Twig 提供了许多您可以使用的过滤器。如果您只想显示第一行,您可以在一定数量的字符后对字符串进行切片。您应该查看 Twig 的文档。如果您需要在切片字符串之前这样做,还有另一个过滤器可以去除标签。

 '12345'|slice(1, 2) 
# outputs 23 #

http://twig.sensiolabs.org/doc/filters/slice.html

【讨论】:

【参考方案2】:

您可以使用“striptags”过滤器获取纯文本,然后应用树枝的“truncate”过滤器来获取部分帖子。 更多详情请阅读我的回答https://***.com/a/29295738/998686

【讨论】:

【参考方案3】:

如果您需要额外的功能,我想您需要编写新的 twig 扩展并将任何自定义逻辑放在那里。它不需要太多时间,但可以让你做你想做的事。看看http://symfony.com/doc/current/cookbook/templating/twig_extension.html

【讨论】:

以上是关于如何在 Twig 中提取从 HTML 解析的纯文本?的主要内容,如果未能解决你的问题,请参考以下文章

Drupal 8 在 Twig 模板中渲染内容

PHP提取富文本字符串中的纯文本,并进行进行截取

从电子邮件文本中解析“发件人”地址

Python中的HTMLParsercookielib抓取和解析网页从HTML文档中提取链接图像文本Cookies

创建出色的解析器 - 从 HTML/博客中提取相关文本

使用 XSLT 2.0/3.0 使用多个步骤将 CDATA 中的纯文本解析为 html。那里的一部分