【问题标题】:Having trouble with a search and replace using regular exrpession in Rails在 Rails 中使用正则表达式进行搜索和替换时遇到问题
【发布时间】:2016-06-29 23:10:38
【问题描述】:

我使用的是 Rails 4.2.3。我正在尝试用相同的值替换我的 URL 中的参数,但添加“1”。例如,如果我的网址是

http://replace.mydomein.com/profiles/152/expanded?embed=true&page=2

我希望替换后的结果是

http://replace.mydomein.com/profiles/152/expanded?embed=true&page=3

所以我正在尝试这个

url = url.sub(/(\&<=page=)\d+/) {|m| m.to_i+1}

但它对我的 URL 没有影响。将“http://replace.mydomein.com/profiles/152/expanded?embed=true&page=2”作为参数传递会产生相同的结果。我在上面的正则表达式中做错了什么?

【问题讨论】:

    标签: regex ruby-on-rails-4 search replace


    【解决方案1】:

    您只需将正则表达式中的\&amp; 替换为?

    url = url.sub(/(?<=page=)\d+/) { |m| m.to_i.next }
    

    因为正向回溯(?&lt;= 的语法就是这样。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-04-29
      • 2019-09-04
      • 2013-06-14
      • 2016-11-30
      相关资源
      最近更新 更多