使用ruby将url编码字符串转换为纯文本

使用ruby将url编码字符串转换为纯文本,ruby,urlencode,Ruby,Urlencode,我正在编写一个脚本来从URL中提取搜索词,但我需要使它们人性化,其中许多具有特殊的URL编码字符。我想知道Ruby中是否有一个gem或一些内置函数来将它们转换为纯文本?或者我必须编写自己的函数来清理它们吗?您可以使用URL解码: require 'cgi' string = CGI::unescape("1+%2B+2+%3D+3") #=> "1 + 2 = 3" 你有一个例子吗?你必须写下来,或者自己想办法,因为你没有提供足够的信息来帮助我们。我们需要您输入的样本以及您想要输出的内容

我正在编写一个脚本来从URL中提取搜索词,但我需要使它们人性化,其中许多具有特殊的URL编码字符。我想知道Ruby中是否有一个gem或一些内置函数来将它们转换为纯文本?或者我必须编写自己的函数来清理它们吗?

您可以使用URL解码:

require 'cgi'
string = CGI::unescape("1+%2B+2+%3D+3")
#=> "1 + 2 = 3"

你有一个例子吗?你必须写下来,或者自己想办法,因为你没有提供足够的信息来帮助我们。我们需要您输入的样本以及您想要输出的内容。因为这是一个URI,我可能会使用
URI。解码www\u form\u组件(“1+%2B+2+%3D+3”)=>“1+2=3”
如果URL编码正确,可以。否则,
CGI::unescape
更健壮:
CGI::unescape(“10%”)与
URI.decode\u www\u form\u component(“10%””)相比更健壮:
CGI::unescape(“10%”)是的,这是URI长期存在的问题。始终存在可寻址::URI,这是作为URI的替代品提出的。