0

我正在尝试从 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过滤器,但没有运气。任何帮助将不胜感激,谢谢!

4

1 回答 1

1

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

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

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

%p= $(message.content).text()
于 2013-04-02T07:03:42.583 回答