Ruby unescape HTML字符串

时间:2015-08-18 06:26:03

标签: ruby html-escape-characters

我知道如何在Ruby中使用以下字符串吗?

C:\inetpub\wwwroot\adminWeb

C:\inetpub\wwwroot\adminWeb

C%3A%5Cinetpub%5Cwwwroot%5CadminWeb

尝试URI.decode但没有成功。

3 个答案:

答案 0 :(得分:10)

CGI library是一个选项:

require 'cgi'

CGI.unescapeHTML('C:\inetpub\wwwroot\adminWeb')
# => "C:\\inetpub\\wwwroot\\adminWeb"

答案 1 :(得分:2)

另一种方法是使用标准的lib URI module

require 'uri'
URI.unescape "C%3A%5Cinetpub%5Cwwwroot%5CadminWeb" # => "C:\\inetpub\\wwwroot\\adminWeb"

答案 2 :(得分:2)

另一个变体是HTMLEntities

HTMLEntities.new.decode "C:\inetpub\wwwroot\adminWeb"             
# => "C:\\inetpub\\wwwroot\\adminWeb"

我更喜欢使用它,因为它处理å— CGI.unescapeHTML {/ 1}}的罕见情况