Ruby: Escape, Unescape, Encode, Decode, HTML, XML, URI, URL

來源:互聯網
上載者:User

This example will show you how to escape and un-escape a value to be included in a URI and within HTML.

require 'cgi'# escapename = "ruby?"value = "yes"url = "http://example.com/?" + CGI.escape(name) + '=' + CGI.escape(value) + "&var=T"# url: http://example.com/?ruby%3F=yes&var=Thtml = %(<a href="#{CGI.escapeHTML(url)}">example</a>)# html: <a href="http://example.com/?ruby%3F=yes&amp;var=T">example</a># unescapename_encoded = html.match(/http:([^"]+)/)[0]# name_encoded: http://example.com/?ruby%3F=yes&amp;var=Thref = CGI.unescapeHTML(name_encoded)# href: http://example.com/?ruby%3F=yes&var=Tquery = href.match(/\?(.*)$/)[1]# query: ruby%3F=yes&var=Tpairs = query.split('&')# pairs: ["ruby%3F=yes", "var=T"]name, value = pairs[0].split('=').map{|v| CGI.unescape(v)}# name, value: ["ruby?", "yes"]
相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.