给定一个包含字符串索引的序列,

str_indices = [[1,2],[7,8]],

从字符串中排除这些的最佳方法是什么?

例如,给定上述标记为排除的索引和字符串 happydays ,我希望返回 hpyda

最佳答案

使用范围:

str_indices=[[1,2],[7,8]]
str="happydays"
str_indices.reverse.each{|a| str[Range.new(*a)]=''}
str
=> "hpyda"
如果不想修改原文:
str_indices.reverse.inject(str){|s,a|(c=s.dup)[Range.new(*a)]='';c}

关于ruby - 从 Ruby 字符串中按索引删除字符,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/5734930/

10-14 16:33
查看更多