如何在 ruby​​ 中将字符串更改为 http 形式?比如#到%23

发布于 2024-10-08 01:20:54 字数 74 浏览 1 评论 0原文

如何在 ruby​​ 中将字符串更改为 http 形式?
例如#%23

How to change a string to http form in ruby?
Such as # to %23.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

青衫儰鉨ミ守葔 2024-10-15 01:20:54

使用 CGI 类来执行此

 url_encoded_string = CGI::escape("'Stop!' said Fred")
     # => "%27Stop%21%27+said+Fred"

操作参考 http://www.ensta.fr/~diam/ruby/online/ruby-doc-stdlib/libdoc/cgi/rdoc/classes/CGI.html#M000067

Use the CGI class to do this

 url_encoded_string = CGI::escape("'Stop!' said Fred")
     # => "%27Stop%21%27+said+Fred"

Reference http://www.ensta.fr/~diam/ruby/online/ruby-doc-stdlib/libdoc/cgi/rdoc/classes/CGI.html#M000067

橘和柠 2024-10-15 01:20:54

使用 Ruby 标准 CGI 库 转义方法:

require 'cgi'
CGI::escape("#") // => "%23"

Use the Ruby Standard CGI library escape method:

require 'cgi'
CGI::escape("#") // => "%23"
悟红尘 2024-10-15 01:20:54

URI: :escape 似乎可以做到这一点。

URI::escape seems to do it.

南七夏 2024-10-15 01:20:54

如果您的查询参数中也有 URL,我建议您

URI.escape(foo, Regexp.new("[^#{URI::PATTERN::UNRESERVED}]"))

可以安全地使用它:)

I would suggest

URI.escape(foo, Regexp.new("[^#{URI::PATTERN::UNRESERVED}]"))

its safe to use if you also have URLs in your query params :)

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文