Dav*_*ney 5 ruby regex string replace gsub
我有很多文档看起来像这样:
foo_1 foo_2
foo_3
bar_1 foo_4 ...
Run Code Online (Sandbox Code Playgroud)
我希望通过采用所有实例foo_[X]并用它们替换它们来转换它们foo_[X+1].在这个例子中:
foo_2 foo_3
foo_4
bar_1 foo_5 ...
Run Code Online (Sandbox Code Playgroud)
我可以用gsub和一个块做到这一点吗?如果没有,最干净的方法是什么?我真的在寻找一个优雅的解决方案,因为我总是可以强迫它,但觉得有一些值得学习的正则表达式.
我根本不了解 Ruby,但类似的东西应该可以工作:
"foo_1 foo_2".gsub(/(foo_)(\d+)/) {|not_needed| $1 + ($2.to_i + 1).to_s}
Run Code Online (Sandbox Code Playgroud)
LE:我实际上让它工作了: http: //codepad.org/Z5ThOvTr