parsingstring以添加到URL编码的URL
鉴于string:
"Hello there world"
我怎样才能创build一个URL编码的string,如下所示:
"Hello%20there%20world"
如果string还有其他符号,我也想知道该怎么做,如:
"hello there: world, how are you"
最简单的方法是什么? 我正在parsing,然后build立一些代码。
require 'uri' URI.encode("Hello there world") #=> "Hello%20there%20world" URI.encode("hello there: world, how are you") #=> "hello%20there:%20world,%20how%20are%20you" URI.decode("Hello%20there%20world") #=> "Hello there world"
Ruby的URI对此很有用。 您可以通过编程方式构build整个URL,并使用该类添加查询参数,并为您处理编码:
require 'uri' uri = URI.parse('http://foo.com') uri.query = URI.encode_www_form( 's' => "Hello there world" ) uri.to_s # => "http://foo.com?s=Hello+there+world"
这些例子是有用的:
URI.encode_www_form([["q", "ruby"], ["lang", "en"]]) #=> "q=ruby&lang=en" URI.encode_www_form("q" => "ruby", "lang" => "en") #=> "q=ruby&lang=en" URI.encode_www_form("q" => ["ruby", "perl"], "lang" => "en") #=> "q=ruby&q=perl&lang=en" URI.encode_www_form([["q", "ruby"], ["q", "perl"], ["lang", "en"]]) #=> "q=ruby&q=perl&lang=en"
这些链接也可能是有用的:
- 何时编码空格加(+)或%20?
- URL编码空格字符:+或%20?
- 17.13.4从W3的“HTML文档中的表单”build议表单内容types 。
如果有人有兴趣,最新的做法是在再培训局做:
<%= u "Hello World !" %>
这将呈现:
您好%20World%20%21
你是url_encode的缩写
你可以在这里find文档