我已經到處搜索並且似乎無法找到我正在尋找的示例。我試圖學習紅寶石,我正在寫一個簡單的腳本。提示用戶輸入加載到數組中的字母。然後,腳本通過一個包含一堆單詞的文件,並提取包含數組內容的單詞。我的問題是,如果它們按照數組的順序,它只會將單詞拉出來。例如...Ruby-找到包含數組中字母的字符串
characterArray = Array.new;
puts "Enter characters that the password contains";
characters = gets.chomp;
puts "Searching words containing #{characters}...";
characterArray = characters.scan(/./);
searchCharacters=characterArray[0..characterArray.size].join;
File.open("dictionary.txt").each { |line|
if line.include?(searchCharacters)
puts line;
end
}
如果我是用這個代碼,並輸入「狗」 該腳本將返回 狗 小狗
,但我需要的輸出返回即使他們的話不按照相同的順序。喜歡... 狗 doggie rodge
對不起,這個草率的代碼。就像我說的還在學習。謝謝你的幫助。
PS。我也試過這個...
File.open("dictionary.txt").each { |line|
if line =~ /[characterArray[0..characterArray.size]]/
puts line;
end
}
但這返回包含任何用戶輸入
而不是將搜索字詞存儲爲''dog'',將其存儲爲''d','o','g',然後檢查搜索數組中的每個字母是否在單詞中看着。 –
文件中的每一行是否只包含一個單詞? –
是的。每行只有一個字 – user1392440