html - 可能已经转义的 html 转义字符串的优雅方式

标签 html ruby escaping

我有一个字符串可能会或可能不会为 HTML 转义。我想确保转义。

当字符串未转义时,CGI.escapeHTML 将按预期工作:

“皇后” -> “皇后”

但是,当字符串被预转义时,它并没有给出正确的结果:

“皇后” -> “皇后's”

一种解决方案是在调用 CGI.escapeHTML 之前调用 CGI.unescapeHTML。有什么方法可以用不那么骇人听闻的方式做到这一点吗?

最佳答案

在调用 GCI::escapeHTML 之前调用 CGI::unescapeHTML 是实现此目的最简单直接的方法。

例如:

require 'cgi'

def to_escapedHTML
  CGI::escapeHTML(CGI::unescapeHTML(self))
end

pp to_escapedHTML("queen's")

关于html - 可能已经转义的 html 转义字符串的优雅方式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49989752/

相关文章:

ruby-on-rails - 在 Ruby 中从一个对象映射到另一个对象

ruby - 我应该打开类的实例变量只是为了测试验证吗?

python - numpy.genfromtxt 错误地解析带有转义字符的列名

javascript - 提交表单而不重新加载页面

javascript - Kendo UI Scheduler 自定义时间标记

ruby - 使用 gets 的控制台 I/O 的额外字符

python - 在 Django 中,如何在 HttpResponse 中转义 html?

javascript - 在表格行内有一个输入复选框,我可以将点击事件添加到行并且仍然能够点击输入吗

java - Type=带有特殊字符的文本模式问题

c++ - "??*"C++转义序列