2017-05-15 67 views
0

Ruby是否有方法在字符串中忽略十六進制代碼?Ruby unescape字符串中的十六進制代碼

例如:

string = "Plus minus symbol: ±" 

如何打印與實際的字符替代十六進制代碼字符串:「±」?我正在尋找適用於任何十六進制代碼的通用解決方案。

+0

我能夠使用HTMLEntities.new.decode(string)的特殊字符進行解碼。 謝謝@theTinMan! – DanVoges

回答

1

你可以使用Nokogiri解析符號,然後將其添加到您的字符串:

require 'nokogiri' 

symbol = Nokogiri::HTML.parse("±").text 
#=> "±" 

string = "Plus minus symbol: #{symbol}" 
#=> "Plus minus symbol: ±" 
+0

Nokogiri是這樣的矯枉過正。 –

+0

@theTinMan它可能,我想這取決於範圍。但我會用'CGI'添加另一個選項。謝謝你的評論! – Gerry

+0

CGI已過時,並有漏洞,所以要小心。我會建議解決方案在關閉原因鏈接的問題。 –

相關問題