Ich versuche, eine Textdatei zu lesen und dann ihre einzelnen Wörter in einem Array zu speichern. Aber ich finde keinen Weg, es nach Worten aufzuteilen.Brechen Textdatei in separate Wörter und speichern in Array in Ruby
text_file = []
File.open(file, "r") do |f|
f.lines.each do |line|
text_file << line.split.map(&:to_s)
end
end
Die obige Methode erstellt ein Array von Arrays, die alle Wörter in einer einzelnen Zeile in einem Array und so weiter speichert.
Gibt es eine Möglichkeit, in der das Array text_file
ein einziges Array aller Wörter enthalten kann?
Wenn die Datei nicht sehr groß ist, könnte man "Schluck" es in einen String, dann gilt [String # scan] (http: // ruby -doc.org/core-2.2.0/String.html#method-i-scan): 'File.read (FName) .scan (/ \ w + /)'. Um es zu versuchen, erstellen Sie zuerst eine Datei: 'File.write (" temp "," Jetzt ist \ ndie Zeit \ nfreuen Sie sich. ") # => 27'. Dann test: 'File.read (" temp "). Scan (/ \ w + /) # => [" Jetzt "," ist "," die "," zeit "," zu "," freuen "]'. –