本文介绍了Ruby中字符串中选定字符替换的所有可能组合的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我想知道是否有一种简单的方法可以以简单的方式在ruby中完成所选字符替换的每种组合。
I was wondering if there is a simple way to do every combination of selected character substitutions in ruby in a simple way.
示例:
string = "this is a test" subs = ['a'=>'@','i'=>'!','s'=>'$'] subsbination.each { |c| string.gsub c }将产生收益
"this is @ test" "th!s !s a test" "thi$ i$ a te$t" "th!s !s @ test" "thi$ i$ @ te$t" "th!$ !$ a te$t" "th!$ !$ @ te$t"感谢您的帮助!
推荐答案string = "this is a test" subs = ['a'=>'@','i'=>'!','s'=>'$'] subs = subs.first.map(&:to_a) 1.upto(subs.length).each do |n| subsbination(n).each do |a| p a.each_with_object(string.dup){|pair, s| s.gsub!(*pair)} end end
更多推荐
Ruby中字符串中选定字符替换的所有可能组合
发布评论