8
votes

Rubis / rails travaillant avec gsub et tableaux

J'ai une chaîne que j'essaie de travailler avec l'utilisation de la méthode GSUB à Ruby. Le problème est que j'ai une gamme dynamique de chaînes que j'ai besoin de itération pour rechercher le texte d'origine et remplacer par.

Par exemple, si j'ai la chaîne d'origine suivante (il s'agit d'un exemple de texte que je travaille avec et j'espère que tout cela fonctionne) et d'avoir un éventail d'articles que je souhaite rechercher et remplacer.

Merci pour l'aide à l'avance!


0 commentaires

3 Réponses :


20
votes

Est-ce ce que vous recherchez?

ruby-1.9.2-p0 > arr = ["This is some sample text", "text file"]  
 => ["This is some sample text", "text file"] 

ruby-1.9.2-p0 > arr = arr.map {|s| s.gsub(/text/, 'document')}
 => ["This is some sample document", "document file"] 


0 commentaires

13
votes
a.each do |s|
    s.gsub!('This is some sample text', 'replacement')
end

0 commentaires

0
votes

Remplacez tout

en utilisant Array # Remplir . P>

irb(main):008:0> a
=> {:a=>1, :b=>2, :c=>3, :d=>nil, :e=>5}
irb(main):009:0> a.values
=> [1, 2, 3, nil, 5]
irb(main):012:0> a.values.map { |x| x.nil? ? 'void' : x }
=> [1, 2, 3, "void", 5]
irb(main):016:0> a.values.map { |x| /\d/.match?(x.to_s) ? 'digit' : x }
=> ["digit", "digit", "digit", nil, "digit"]


0 commentaires