2009-11-17 63 views

回答

6

我想你的意思是你有一個字符串數組,他們都包含一些你想要刪除的子字符串。非破壞性地:

array.map {|s| s.gsub(keyword, '')} 

根據需要使用破壞性變體在原地進行。

+0

這裏是一個破壞性的(原地)例如:'array.each {|字| word.delete!('aeiou')}' – 2009-11-17 01:00:38

+0

這裏是另一個破壞性(in-place)的例子:'array.map! {|字| word.gsub(關鍵字,'')}' – 2009-11-17 01:13:58

+6

我們是destructoglenns – 2009-11-17 01:14:34

1

是指數組中的字符串還是非唯一元素。對於第一個,使用uniq的方法:

p ["foo", "bar", "foo", "baz"].uniq 
["foo", "bar", "baz"] 

對於後者,你可以試試:

p ["foo", "bar", "foo", "baz"].map { |x| x.gsub('oo', '') } 
["f", "bar", "f", "baz"] 
相關問題