ruby - 在 Ruby 中,如何替换字符串中的问号字符?

标签 ruby string uri substitution

在 Ruby 中,我有:

require 'uri'
foo = "et tu, brutus?"
bar = URI.encode(foo)      # => "et%20tu,%20brutus?"

我试图让 bar 等于“et%20tu,%20brutus%3f”(“?”替换为“%3F”)当我尝试添加这个时:

bar["?"] = "%3f"

“?”匹配所有内容,我得到

=> "%3f"

我试过了

bar["\?"]
bar['?']
bar["/[?]"]
bar["/[\?]"]

还有一些其他的东西,都不起作用。

最佳答案

需要'cgi'并调用CGI.escape

关于ruby - 在 Ruby 中,如何替换字符串中的问号字符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/547127/

相关文章:

ruby-on-rails - Heroku 应用程序崩溃

c++ - 优化静态字符串的字符串存储

c++ - 如何在递归函数中将字符串捕获到变量中?

elixir - 成语在Elixir中使用查询字符串构造URI

php - Mysql选择非a-z字符

url - Web Api:Whitespace使ASP.NET 4 Web Api(RC)崩溃

ruby-on-rails - Ruby 变量如何以及何时实例化

ruby - 如何在 VIM 中导航 Ruby 方法?

ruby - 如何在 Ruby 中使用 Nokogiri 解析 HTML

java - 为单个字符串设置字体?