从HAML中的html内容变量中提取纯文本

时间:2013-04-01 21:52:14

标签: html haml hamlc

我正在尝试从HAML中的某些HTML内容中提取纯文本。例如,如果我在名为message.content的变量中包含此HTML:

Hi, this is a <strong>test</strong> message!

我有一条像这样的HAML专栏:

%p= message.content

我希望这是输出:

<p>
  Hi, this is a test message!
</p>

我有可能做到吗?我查看了!=,但它解释了HTML以及:plain过滤器,但没有运气。任何帮助将不胜感激,谢谢!

1 个答案:

答案 0 :(得分:1)

我不知道为此目的的HAML帮助程序,您必须使用外部帮助程序或使用RegExp。我知道RegExp并不是HTML处理的首选工具,但它在简单的情况下工作正常:

%p= message.content.replace(/<\/?\w+\/?>/g, '')

由于您添加了hamlc标记,并且您可能希望此解决方案在浏览器中运行,因此您可以使用jQuery提取文本内容:

%p= $(message.content).text()