Ruby 转义 HTML 字符串
Ruby unescape HTML string
知道如何对 Ruby 中的以下字符串进行转义吗?
C:\inetpub\wwwroot\adminWeb
到
C:\inetpub\wwwroot\adminWeb
或到
C%3A%5Cinetpub%5Cwwwroot%5CadminWeb
尝试 URI.decode
但没有成功。
CGI
library是一个选项:
require 'cgi'
CGI.unescapeHTML('C:\inetpub\wwwroot\adminWeb')
# => "C:\inetpub\wwwroot\adminWeb"
另一种方法是使用标准库的 URI module:
require 'uri'
URI.unescape "C%3A%5Cinetpub%5Cwwwroot%5CadminWeb" # => "C:\inetpub\wwwroot\adminWeb"
另一个变体是 HTMLEntities
HTMLEntities.new.decode "C:\inetpub\wwwroot\adminWeb"
# => "C:\inetpub\wwwroot\adminWeb"
我更喜欢使用它,因为它处理罕见的情况,如å
和—
,而CGI.unescapeHTML
不会
知道如何对 Ruby 中的以下字符串进行转义吗?
C:\inetpub\wwwroot\adminWeb
到
C:\inetpub\wwwroot\adminWeb
或到
C%3A%5Cinetpub%5Cwwwroot%5CadminWeb
尝试 URI.decode
但没有成功。
CGI
library是一个选项:
require 'cgi'
CGI.unescapeHTML('C:\inetpub\wwwroot\adminWeb')
# => "C:\inetpub\wwwroot\adminWeb"
另一种方法是使用标准库的 URI module:
require 'uri'
URI.unescape "C%3A%5Cinetpub%5Cwwwroot%5CadminWeb" # => "C:\inetpub\wwwroot\adminWeb"
另一个变体是 HTMLEntities
HTMLEntities.new.decode "C:\inetpub\wwwroot\adminWeb"
# => "C:\inetpub\wwwroot\adminWeb"
我更喜欢使用它,因为它处理罕见的情况,如å
和—
,而CGI.unescapeHTML
不会