从 HAML 中的 html 内容变量中提取纯文本
Posted
技术标签:
【中文标题】从 HAML 中的 html 内容变量中提取纯文本【英文标题】:Extracting plain text from an html content variable in HAML 【发布时间】:2013-04-01 21:52:13 【问题描述】:我正在尝试从 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】:我不知道用于此目的的 HAML 助手,您必须使用外部助手或使用 RegExp。我知道 RegExp 并不是 HTML 处理的真正首选工具,但在简单的情况下它可以正常工作:
%p= message.content.replace(/<\/?\w+\/?>/g, '')
由于您添加了hamlc
标签并且您可能希望此解决方案在浏览器中工作,您可以使用 jQuery 来提取文本内容:
%p= $(message.content).text()
【讨论】:
是的,我最终使用了你提到的 jQuery。我认为它比 RegExp 更安全,谢谢!。以上是关于从 HAML 中的 html 内容变量中提取纯文本的主要内容,如果未能解决你的问题,请参考以下文章